c#validation以相同名称开头的所有文本框

时间:2010-12-12 19:09:24

标签: c# validation textbox numbers

我在c#中有windows应用程序

带有我要检查的7个文本框的表单(以及表单中的更多控件)

我想检查所有这7个文本框,用户输入数据,这是一个数字

所有此文本框开始同名

我该怎么做?

感谢。

我开始写类似的东西,但我是堆栈

     foreach (TextBox box in this.Controls.OfType<TextBox>()
.Where(tb => tb.Text.StartsWith('tbwin')))

2 个答案:

答案 0 :(得分:2)

您可以将它们全部设为MaskedTextBox,并确保以这种方式输入数字: http://msdn.microsoft.com/en-us/library/system.windows.forms.maskedtextbox.aspx

答案 1 :(得分:2)

foreach (TextBox box in this.Controls.OfType<TextBox>()
       .Where(tb => tb.Name.StartsWith("tbwin")))
{
    int result;
    if(!int.TryParse(box.Text, out result))
    {
         //Not OK. Inform user
         MessageBox.Show("You need to write a valid number in " + box.Name);
    } 
}