我在C#,Windows Form Application中工作。
我有6个接受用户输入的文本框。单击“提交”按钮时,它会将值存储在数组中。我想创建一些东西来检查文本框中的两件事1.)文本框中有一些东西和2.)信息只是一个数字,没有别的。
我被告知尝试捕获循环将能够做到这一点,但我还没弄清楚如何。
感谢您提供的任何帮助
答案 0 :(得分:3)
您不希望为此使用try catch块 - 您不应该对标准应用程序流使用异常,因为它是一个相对昂贵的选项。
检查它是否为空
string.IsNullOrEmpty(textbox1.Text);
检查是否为数字
int result;
int.TryParse(textbox1.Text), out result);
答案 1 :(得分:1)
// In button_click event or somewhere like that
if (!this.CheckInput(txt_TextBox1))
return;
if (!this.CheckInput(txt_TextBox2))
return;
if (!this.CheckInput(txt_TextBox3))
return;
// Everything OK, do something
然后是这样的方法:
private bool CheckInput(TextBox textbox) {
int test;
if (!int.TryParse(textbox.Text.Trim(), out test)) {
MessageBox.Show("Invalid input");
return false;
}
return true;
}
答案 2 :(得分:1)
要检查文本框中是否有东西,可以调用string.IsNullOrEmpty方法。
至于检查文本框是否只包含数值,您可能需要考虑preventing users from entering non-numeric values。这比在输入值后阻止它更加用户友好。
答案 3 :(得分:1)
您可以使用isNullOrEmtpy作为上面建议的Bas,以检查是否有任何用户输入。 仅限数字,我建议您使用正则表达式。您可以找到解决方案here