2010-04-14 2 views
1

Existe-t-il une meilleure façon de faire des "formulaires d'entrée" dans WebForms?WebForms Text Input => Doubles & Strings & Booleans

Je finis toujours avec le code comme ceci:

Double d = 0; // chuckle inside 
if(Double.TryParse(myNumberTextField.Text, out d)) 
{ 
    myObject.DoubleVal = d; 
} 

Y at-il une meilleure façon de traiter de forme libre entrée « numérique ».

Répondre

1

Vous pouvez valider la zone de texte à l'aide d'un validateur de comparaison, puis, si la page réussit la validation, utilisez la méthode double.Parse.

<asp:TextBox ID="txtDouble" runat="server"></asp:TextBox> 
    <asp:CompareValidator ID="CompareValidator1" runat="server" 
     ErrorMessage="Input must contain a double." ControlToValidate="txtDouble" 
     Operator="DataTypeCheck" SetFocusOnError="True" Type="Double"></asp:CompareValidator> 
<br /> 
<asp:Button ID="btnSubmit" runat="server" Text="Submit" /> 

/*C#*/ 
protected void btnSubmit_Click(object sender, EventArgs e) 
{ 
    if (Page.IsValid) 
    { 
     double d = double.Parse(txtDouble.Text); 
    } 
}