BaseCompareValidator.CanConvert Methode

Definition

Bestimmt, ob die angegebene Zeichenfolge in den angegebenen Datentyp konvertiert werden kann.

Überlädt

CanConvert(String, ValidationDataType)

Bestimmt, ob die angegebene Zeichenfolge in den angegebenen Datentyp konvertiert werden kann. Diese Version der überladenen Methode testet Währungs-, Datums- und Double-Werte mithilfe des von der aktuellen Kultur verwendeten Formats.

CanConvert(String, ValidationDataType, Boolean)

Bestimmt, ob die angegebene Zeichenfolge in den angegebenen Datentyp konvertiert werden kann. Mithilfe dieser Version der überladenen Methode können Sie angeben, ob Werte mithilfe eines kulturneutralen Formats getestet werden.

CanConvert(String, ValidationDataType)

Bestimmt, ob die angegebene Zeichenfolge in den angegebenen Datentyp konvertiert werden kann. Diese Version der überladenen Methode testet Währungs-, Datums- und Double-Werte mithilfe des von der aktuellen Kultur verwendeten Formats.

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

Parameter

text
String

Die zu testende Zeichenfolge.

type
ValidationDataType

Einer der ValidationDataType-Werte.

Gibt zurück

Boolean

true, wenn die angegebene Zeichenfolge in den angegebenen Datentyp konvertiert werden kann, andernfalls false.

Beispiele

Im folgenden Beispiel wird die Verwendung der CanConvert Methode veranschaulicht, um zwei ganzzahlige Werte zu vergleichen und zu bestimmen, ob die zweite ganze Zahl konvertiert werden kann.


<%@ 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>

Hinweise

Verwenden Sie die CanConvert(String, ValidationDataType) Methode, um zu bestimmen, ob die angegebene Zeichenfolge in den angegebenen Datentyp konvertiert werden kann. Diese Methode wird häufig verwendet, um zu testen, ob eine Zeichenfolge in einen kompatiblen Datentyp konvertiert werden kann, bevor Sie einen Vorgang ausführen, der von diesem Datentyp abhängt.

Diese Version der Methode testet den Wert mithilfe des formats, das von der aktuellen Kultur verwendet wird. Verwenden Sie die BaseCompareValidator.CanConvert(String, ValidationDataType, Boolean) überladene Version dieser Methode, um den Wert mithilfe eines kulturneutralen Formats zu testen.

Siehe auch

Gilt für

CanConvert(String, ValidationDataType, Boolean)

Bestimmt, ob die angegebene Zeichenfolge in den angegebenen Datentyp konvertiert werden kann. Mithilfe dieser Version der überladenen Methode können Sie angeben, ob Werte mithilfe eines kulturneutralen Formats getestet werden.

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

Parameter

text
String

Die zu testende Zeichenfolge.

type
ValidationDataType

Einer der ValidationDataType-Enumerationswerte.

cultureInvariant
Boolean

true, um Werte mithilfe eines kulturneutralen Formats zu testen, andernfalls false.

Gibt zurück

Boolean

true, wenn die angegebene Zeichenfolge in den angegebenen Datentyp konvertiert werden kann, andernfalls false.

Hinweise

Verwenden Sie die CanConvert(String, ValidationDataType, Boolean) Methode, um zu bestimmen, ob die angegebene Zeichenfolge in den angegebenen Datentyp konvertiert werden kann. Diese Methode wird häufig verwendet, um zu testen, ob eine Zeichenfolge in einen kompatiblen Datentyp konvertiert werden kann, bevor Sie einen Vorgang ausführen, der von diesem Datentyp abhängt. Um anzugeben, dass Werte mithilfe eines kulturneutralen Formats getestet werden sollen, übergeben Sie true ihn für den cultureInvariant Parameter. Andernfalls werden Werte mithilfe des von der aktuellen Kultur verwendeten Formats getestet. Wenn Sie einen Wert mithilfe des von der aktuellen Kultur verwendeten Formats testen, sollten Sie die BaseCompareValidator.CanConvert(String, ValidationDataType) überladene Version dieser Methode verwenden.

Siehe auch

Gilt für