本文介绍了在所有文本框中检查许多文本框是否为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,没有控件的父级文本框,或者它们都是非空的。如果将此方法应用于表单,它将按层次结构找到此表单上第一个遇到的文本框。引用找到的控件可能很重要,因为您可以专注于它并告诉用户在其中输入文本(而不是向用户提供难看的建议以找到所有这些)。



-SA


这篇关于在所有文本框中检查许多文本框是否为null的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-20 11:45
查看更多