本文介绍了在所有文本框中检查许多文本框是否为null的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
大家好,
i有一个关于检查空文本框的问题,
i希望检查表单上所有文本框中的多个文本框,
我该怎么办?
i使用这段代码,但它检查表格上的所有文本框。
hi everyone,
i have a question about checking text boxes for null,
i want to check many text box in all text boxes on the form,
how can i do it?
i use this code but it check all text boxes on the form.
private void button1_Click(object sender, EventArgs e)
{
bool isIncomplete = false;
foreach (Control ctls in this.Controls)
{
if (ctls is TextBox)
{
TextBox tb = ctls as TextBox;
if(string.IsNullOrWhiteSpace(tb.Text))
{
isIncomplete = true;
break;
}
}
}
if (isIncomplete)
{
MessageBox.Show("please fill all text boxes!");
}
}
推荐答案
foreach (Control c in Controls)
{
if (c.Tag != null && c is TextBox)
{
TextBox t = c as TextBox;
if (string.IsNullOrWhiteSpace(t.Text))
{
isIncomplete = true;
break;
}
}
}
static TextBox FindEmptyTextBox(Control parent) {
TextBox textBox = parent as TextBox;
if (textBox != null) { // successful dynamic cast, parent is a TextBox
it (textBox.Text == string.Empty) // variant: if (textBox.Text.Trim() == string.Empty)
return textBox;
} else
foreach(Control child in parent.Controls) {
TextBox childTextBox = FindEmptyTextBox(child);
if (childTextBox != null)
return childTextBox;
} //loop
return null;
} // FindEmptyTextBox
此代码将按层次结构找到遇到的第一个空文本框。它返回null,没有控件的父级文本框,或者它们都是非空的。如果将此方法应用于表单,它将按层次结构找到此表单上第一个遇到的文本框。引用找到的控件可能很重要,因为您可以专注于它并告诉用户在其中输入文本(而不是向用户提供难看的建议以找到所有这些)。
这篇关于在所有文本框中检查许多文本框是否为null的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!