Partager via


BaseCompareValidator.CanConvert Méthode

Définition

Détermine si la chaîne spécifiée peut être convertie au type de données spécifié.

Surcharges

CanConvert(String, ValidationDataType)

Détermine si la chaîne spécifiée peut être convertie au type de données spécifié. Cette version de la méthode surchargée teste les valeurs de monnaie, de date et doubles à l'aide du format utilisé par la culture actuelle.

CanConvert(String, ValidationDataType, Boolean)

Détermine si la chaîne spécifiée peut être convertie au type de données spécifié. Cette version de la méthode surchargée vous permet de spécifier si les valeurs sont testées à l'aide d'un format indépendant de la culture.

CanConvert(String, ValidationDataType)

Détermine si la chaîne spécifiée peut être convertie au type de données spécifié. Cette version de la méthode surchargée teste les valeurs de monnaie, de date et doubles à l'aide du format utilisé par la culture actuelle.

public:
 static bool CanConvert(System::String ^ text, System::Web::UI::WebControls::ValidationDataType type);
public static bool CanConvert (string text, System.Web.UI.WebControls.ValidationDataType type);
static member CanConvert : string * System.Web.UI.WebControls.ValidationDataType -> bool
Public Shared Function CanConvert (text As String, type As ValidationDataType) As Boolean

Paramètres

text
String

Chaîne à tester.

type
ValidationDataType

Une des valeurs de l'objet ValidationDataType.

Retours

Boolean

true si la chaîne de données spécifiée peut être convertie au type de données spécifié ; sinon, false.

Exemples

L’exemple suivant illustre l’utilisation de la CanConvert méthode pour comparer deux valeurs entières et déterminer si le deuxième entier peut être converti.


<%@ Page Language="C#" AutoEventWireup="True" %>
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>BaseCompareValidator CanConvert Example</title>
<script runat="server">
 
      void Button_Click(Object sender, EventArgs e) 
      {
          
         // Display whether the value of TextBox1 passes validation.  
         if (Page.IsValid) 
         {

            lblOutput.Text = "Validation passed! ";

            // An input control passes validation if the value it is being 
            // compared to cannot be converted to the data type specified 
            // by the BaseCompareValidator.Type property. Be sure to use 
            // validation controls on each input control independently.

            // Test the values being compared for their data types.
            ValidateType(Page.IsValid);

         }
         else 
         {

            lblOutput.Text = "Validation failed! ";

            // Test the values being compared for their data types.
            ValidateType(Page.IsValid);

         }         

      }

      void ValidateType(bool Valid)
      {
          
         // Display an error message if the value of TextBox1 cannot be 
         // converted to the data type specified by the 
         // BaseCompareValidator.Type property (in this case an integer).
         if (!BaseCompareValidator.CanConvert(TextBox1.Text, ValidationDataType.Integer))
         {

            lblOutput.Text += "The first value is not an integer. ";

         }

         // Display an error message if the value of TextBox2 cannot be 
         // converted to the data type specified by the 
         // BaseCompareValidator.Type property (in this case an integer).
         if (!BaseCompareValidator.CanConvert(TextBox2.Text, ValidationDataType.Integer))
         {
          
            // An input control passes validation if the value it is being 
            // compared to cannot be converted to the data type specified 
            // by the BaseCompareValidator.Type property.  
            // Display a different message when this scenario occurs.
            if(Valid)
            {
               lblOutput.Text += "However, the second value is not an integer. ";
            }
            else
            {
               lblOutput.Text += "The second value is not an integer. ";
            }

         }

      }
 
   </script>
 
</head>
<body>
 
   <form id="form1" runat="server">

      <h3>BaseCompareValidator CanConvert Example</h3>
      <p>
      Enter an integer in each text box. <br />
      Click "Validate" to compare the values <br />
      for equality.
      </p>
 
      <table style="background-color:#eeeeee; padding:10">

         <tr valign="top">

            <td>

               <h5>Value 1:</h5>
               <asp:TextBox id="TextBox1" 
                    runat="server"/>

            </td>


            <td>

               <h5>Value 2:</h5>
               <asp:TextBox id="TextBox2" 
                    runat="server"/>
               <p>
               <asp:Button id="Button1"
                    Text="Validate"  
                    OnClick="Button_Click" 
                    runat="server"/>
                </p>
            </td>
         </tr>

      </table>
 
      <asp:CompareValidator id="Compare1" 
           ControlToValidate="TextBox1" 
           ControlToCompare="TextBox2"
           EnableClientScript="False" 
           Type="Integer" 
           runat="server"/>
 
      <br />
       
      <asp:Label id="lblOutput" 
           Font-Names="verdana" 
           Font-Size="10pt" 
           runat="server"/>
 
   </form>
 
</body>
</html>

<%@ Page Language="VB" AutoEventWireup="True" %>
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>BaseCompareValidator CanConvert Example</title>
<script runat="server">
 
      Sub Button_Click(sender As Object, e As EventArgs) 
          
         ' Display whether the value of TextBox1 passes validation.  
         If Page.IsValid Then 

            lblOutput.Text = "Validation passed! "

            ' An input control passes validation if the value it is being 
            ' compared to cannot be converted to the data type specified 
            ' by the BaseCompareValidator.Type property. Be sure to use 
            ' validation controls on each input control independently.

            ' Test the values being compared for their data types.
            ValidateType(Page.IsValid)

         Else 

            lblOutput.Text = "Validation failed! "

            ' Test the values being compared for their data types.
            ValidateType(Page.IsValid)

         End If         

      End Sub

      Sub ValidateType(Valid As Boolean)
          
         ' Display an error message if the value of TextBox1 cannot be 
         ' converted to the data type specified by the 
         ' BaseCompareValidator.Type property (in this case an integer).
         If Not BaseCompareValidator.CanConvert(TextBox1.Text, ValidationDataType.Integer) Then

            lblOutput.Text &= "The first value is not an integer. "

         End If

         ' Display an error message if the value of TextBox2 cannot be 
         ' converted to the data type specified by the 
         ' BaseCompareValidator.Type property (in this case an integer).
         If Not BaseCompareValidator.CanConvert(TextBox2.Text, ValidationDataType.Integer) Then
          
            ' An input control passes validation if the value it is being 
            ' compared to cannot be converted to the data type specified 
            ' by the BaseCompareValidator.Type property. 
            ' Display a different message when this scenario occurs.
            If Valid Then

               lblOutput.Text &= "However, the second value is not an integer. "
            
            Else
            
               lblOutput.Text &= "The second value is not an integer. "

            End If

         End If

      End Sub
 
   </script>
 
</head>
<body>
 
   <form id="form1" runat="server">

      <h3>BaseCompareValidator CanConvert Example</h3>
      <p>
      Enter an integer in each text box. <br />
      Click "Validate" to compare the values <br />
      for equality.
      </p>
 
      <table  style="background-color:#eeeeee; padding:10">

         <tr valign="top">

            <td>

               <h5>Value 1:</h5>
               <asp:TextBox id="TextBox1" 
                    runat="server"/>

            </td>


            <td>

               <h5>Value 2:</h5>
               <asp:TextBox id="TextBox2" 
                    runat="server"/>
               <p>
               <asp:Button id="Button1"
                    Text="Validate"  
                    OnClick="Button_Click" 
                    runat="server"/>
                </p>    

            </td>
         </tr>

      </table>
 
      <asp:CompareValidator id="Compare1" 
           ControlToValidate="TextBox1" 
           ControlToCompare="TextBox2"
           EnableClientScript="False" 
           Type="Integer" 
           runat="server"/>
 
      <br />
       
      <asp:Label id="lblOutput" 
           Font-Names="verdana" 
           Font-Size="10pt" 
           runat="server"/>
 
   </form>
 
</body>
</html>

Remarques

Utilisez la CanConvert(String, ValidationDataType) méthode pour déterminer si la chaîne spécifiée peut être convertie en type de données spécifié. Cette méthode est couramment utilisée pour tester si une chaîne peut être convertie en type de données compatible avant d’effectuer une opération qui dépend de ce type de données.

Cette version de la méthode teste la valeur à l’aide du format utilisé par la culture actuelle. Pour tester la valeur à l’aide d’un format neutre pour la culture, utilisez la BaseCompareValidator.CanConvert(String, ValidationDataType, Boolean) version surchargée de cette méthode.

Voir aussi

S’applique à

CanConvert(String, ValidationDataType, Boolean)

Détermine si la chaîne spécifiée peut être convertie au type de données spécifié. Cette version de la méthode surchargée vous permet de spécifier si les valeurs sont testées à l'aide d'un format indépendant de la culture.

public:
 static bool CanConvert(System::String ^ text, System::Web::UI::WebControls::ValidationDataType type, bool cultureInvariant);
public static bool CanConvert (string text, System.Web.UI.WebControls.ValidationDataType type, bool cultureInvariant);
static member CanConvert : string * System.Web.UI.WebControls.ValidationDataType * bool -> bool
Public Shared Function CanConvert (text As String, type As ValidationDataType, cultureInvariant As Boolean) As Boolean

Paramètres

text
String

Chaîne à tester.

type
ValidationDataType

Une des valeurs d'énumération ValidationDataType.

cultureInvariant
Boolean

true pour tester des valeurs à l'aide d'un format indépendant de la culture ; sinon, false.

Retours

Boolean

true si la chaîne de données spécifiée peut être convertie au type de données spécifié ; sinon, false.

Remarques

Utilisez la CanConvert(String, ValidationDataType, Boolean) méthode pour déterminer si la chaîne spécifiée peut être convertie en type de données spécifié. Cette méthode est couramment utilisée pour tester si une chaîne peut être convertie en type de données compatible avant d’effectuer une opération qui dépend de ce type de données. Pour indiquer que les valeurs doivent être testées à l’aide d’un format neutre pour la culture, passez-la true pour le cultureInvariant paramètre ; sinon, les valeurs sont testées à l’aide du format utilisé par la culture actuelle. Lors du test d’une valeur à l’aide du format utilisé par la culture actuelle, envisagez d’utiliser la BaseCompareValidator.CanConvert(String, ValidationDataType) version surchargée de cette méthode.

Voir aussi

S’applique à