BaseCompareValidator.CanConvert Metoda

Definice

Určuje, zda zadaný řetězec lze převést na zadaný datový typ.

Přetížení

Name Description
CanConvert(String, ValidationDataType)

Určuje, zda zadaný řetězec lze převést na zadaný datový typ. Tato verze přetížené metody testuje hodnoty měny, dvojité hodnoty a hodnoty kalendářních dat pomocí formátu používaného aktuální jazykovou verzí.

CanConvert(String, ValidationDataType, Boolean)

Určuje, zda zadaný řetězec lze převést na zadaný datový typ. Tato verze přetížené metody umožňuje určit, zda se hodnoty testují pomocí jazykové verze neutrálního formátu.

CanConvert(String, ValidationDataType)

Určuje, zda zadaný řetězec lze převést na zadaný datový typ. Tato verze přetížené metody testuje hodnoty měny, dvojité hodnoty a hodnoty kalendářních dat pomocí formátu používaného aktuální jazykovou verzí.

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

Parametry

text
String

Řetězec, který se má testovat.

type
ValidationDataType

Jedna z ValidationDataType hodnot.

Návraty

truepokud zadaný datový řetězec lze převést na zadaný datový typ; v opačném případě . false

Příklady

Následující příklad ukazuje použití CanConvert metody k porovnání dvou celočíselné hodnoty a určení, zda lze druhé celé číslo převést.


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

Poznámky

Použijte metodu CanConvert(String, ValidationDataType) k určení, zda zadaný řetězec lze převést na zadaný datový typ. Tato metoda se běžně používá k testování, zda je možné řetězec před provedením operace, která závisí na tomto datovém typu, převést na kompatibilní datový typ.

Tato verze metody testuje hodnotu pomocí formátu používaného aktuální jazykovou verzí. K otestování hodnoty pomocí jazykové verze neutrálního formátu použijte BaseCompareValidator.CanConvert(String, ValidationDataType, Boolean) přetíženou verzi této metody.

Viz také

Platí pro

CanConvert(String, ValidationDataType, Boolean)

Určuje, zda zadaný řetězec lze převést na zadaný datový typ. Tato verze přetížené metody umožňuje určit, zda se hodnoty testují pomocí jazykové verze neutrálního formátu.

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

Parametry

text
String

Řetězec, který se má testovat.

type
ValidationDataType

Jedna z hodnot výčtu ValidationDataType

cultureInvariant
Boolean

truetestovat hodnoty pomocí jazykové verze neutrálního formátu; v opačném případě . false

Návraty

truepokud zadaný datový řetězec lze převést na zadaný datový typ; v opačném případě . false

Poznámky

Použijte metodu CanConvert(String, ValidationDataType, Boolean) k určení, zda zadaný řetězec lze převést na zadaný datový typ. Tato metoda se běžně používá k testování, zda je možné řetězec před provedením operace, která závisí na tomto datovém typu, převést na kompatibilní datový typ. Pokud chcete označit, že hodnoty by se měly testovat pomocí jazykové verze neutrálního formátu, předejte true parametru cultureInvariant . V opačném případě se hodnoty testují pomocí formátu používaného aktuální jazykovou verzí. Při testování hodnoty pomocí formátu používaného aktuální jazykovou verzí zvažte použití BaseCompareValidator.CanConvert(String, ValidationDataType) přetížené verze této metody.

Viz také

Platí pro