例如,如果我想检查是否所有输入字段都已填充,我不想对很多if语句执行此操作,尤其是在有大量文本字段的情况下。那么有更好的方法吗?
答案 0 :(得分:2)
如何循环遍历表单中的所有控件,并获取它是否为空?
foreach(Control control in this.Controls)
{
if(control is TextBox && control.Text == "")
{
MessageBox.Show("You have to fill all fields");
return;
}
}
确定你可以检查你想要的任何控制!不仅仅是textBoxes
答案 1 :(得分:2)
使用System.Linq,您可以在一行中执行此操作,并在您需要的控件上对其进行过滤:
this.Controls.OfType<TextBox>().All(box => box.Text.Length > 0);
或复选框
this.Controls.OfType<CheckBox>().All(box => box.Checked);
等等。
如果所有内容都被填写/检查,它将返回true。
请记住使用System.Linq;在您的代码之上