foreach (Object obj in this.groupBox1.Controls)
            {
                if (obj is TextBox)
                {
                    TextBox tb = (TextBox)obj;
                    if (tb.Text.Trim() == "")
                    {
                        num += 1;
                    }
                }
                if(obj is ComboBox)
                {
                    ComboBox cbo = (ComboBox)obj;
                    if(cbo.Text.Trim() =="")
                    {
                        num += 1;
                    }
                }
            }
            if (num == 0)
            {
                che = true;
            }
            else
            {
                che = false;
            }
            return che;
这是一段判断窗体内的文本框是否不为空,我想问一下有没有跟简单的解决方法,并且当它检测到空的时给出一个相应的要输入项的提示框。

解决方案 »

  1.   

    要提示什么内容?
    if (tb.Text.Trim() == "") 
                        { 
                            //在这里写提示不就可以了吗 
                        } 
      

  2.   

    看了哈你的情况,感觉这样就可以了
    只需要遍历一次就Ok!!!
                foreach (Control c in groupBox1.Controls)
                {
                    if (c is TextBox && c.Text == "" || c is ComboBox && c.Text =="")
                    {
                         MessageBox.Show("有控件内容为为空");
                         break; 
                    }
                }
      

  3.   

    使用ToolTip可以比较完美的解决此问题foreach (Control c in groupBox1.Controls)
    {
       if (c is TextBox && c.Text == "" || c is ComboBox && c.Text =="")
       {
           ToolTip tt = new ToolTip();
           Point pt = new Point(c.Left,c.Top);
           tt.Show("不能为空",this,pt,1000);
           c.Focus();
       }