代码
  foreach (Control control in this.groupBox1.Controls)
            {
                if (control is TextBox)
                {
                    TextBox txt = control as TextBox;
                    if (txt.Text.Trim().Length == 0)
                    {
                        if (txt.Tag.Equals("条码") || txt.Tag.Equals("译者")||txt.Tag.Equals("入馆时间"))
                        {
                            continue;
                        }
                        MessageBox.Show(txt.Tag + "不能为空", "输入有误", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                        return false;
                 }
              }
窗口
我想除了条码,译者,入馆时间不能空外,其他如果是空的话就      
                  MessageBox.Show(txt.Tag + "不能为空", "输入有误", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);但为什么到了馆藏数和可借数,就算是空的,它也没出MessgageBox.Show呢请大家给我一点提示!!

解决方案 »

  1.   

    if(txt.Tag.Equals("条码") || txt.Tag.Equals("译者")||txt.Tag.Equals("入馆时间"))
      {
       if(string.IsNullOrEmpty(txt.Text))
       { 
        MessageBox.Show(txt.Tag + "不能为空", "输入有误", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
        return;
       }
      }
      

  2.   

    把你那个判断的if改一下:
    if (!(txt.Tag.Equals("条码") || txt.Tag.Equals("译者")||txt.Tag.Equals("入馆时间")))
    {
     MessageBox.Show(txt.Tag + "不能为空", "输入有误", MessageBoxButtons.OK,    MessageBoxIcon.Exclamation);
      return false;}
    continue去掉
      

  3.   

      foreach (Control control in this.groupBox1.Controls)
      {
      if (control is TextBox)
      {
         if(control.name!="t1" || control.name!=t2 ||control.name!=t3)
            {
              if(control.text=="")
                  {
                   MessageBox.Show(txt.Tag + "不能为空", "输入有误", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
    return false;
                  }
           }
    }
    }
    return true;
      

  4.   

    如果LZ逻辑没错的话
    先确定你的 藏馆数和可借数 的TextBox是否在 groupBox1 里
    foreach (Control control in this.groupBox1.Controls)
    LZ只是在groupBox1里循环判断
    按LZ命名来开
    是否还有 groupBox2,groupBox3?打个断点调试下,应该可以找到问题
      

  5.   

    看了,试了,只在groupBox1里的!
      

  6.   

    大家说的方法我都试了,但还是没有解决问题,馆藏数和可借数就算是空的,它也还是没MessageBox.Show出来,可它两就是在groupBox1里的,还有别的可能吗?
      

  7.   

    注释掉
      if (txt.Tag.Equals("条码") || txt.Tag.Equals("译者")||txt.Tag.Equals("入馆时间"))
      {
      continue;
      }
    试试呢,也许Tag的内容刚好为这三个中的一个。
      

  8.   

    是作业
    今天发现了问题所在:其实TextBox都绑定了数据库里的一个表,库里的馆藏数和可借数是Int类型的,然后在这两的TextBox.Text输入其他字符串或留空,程序都“不予理睬”
    很抱歉之前我没有说清楚,麻烦大家了:-)
      

  9.   

    if (txt.Tag.Equals()="条码" || txt.Tag.Equals()+"译者"||txt.Tag.Equals()="入馆时间")
    {
    messbox.show("");
    }
    else
    {
    messbox.show("");
    }