private void txtCustomNo_Leave(object sender, EventArgs e)
        {
            if (txtCustomNo.Text == "")
            {
                lblCustomerNo.Visible = true;
            }
            else
            {
                lblCustomerNo.Visible = false;
            }
        }        private void txtCustomName_Leave(object sender, EventArgs e)
        {
            if (txtCustomName.Text == "")
            {
                lblCustomerName.Visible = true;
            }
            else
            {
                lblCustomerName.Visible = false;
            }
        }        private void txtLinkMan_Leave(object sender, EventArgs e)
        {
            if (txtLinkMan.Text == "")
            {
                lblLinkManName.Visible = true;
            }
            else
            {
                lblLinkManName.Visible = false;
            }
        }        private void txtTelPhone_Leave(object sender, EventArgs e)
        {
            if (txtTelPhone.Text == "")
            {
                lblTelphone.Visible = true;
            }
            else
            {
                lblTelphone.Visible = false;
            }
        }        private void cboArea_Leave(object sender, EventArgs e)
        {
            if (cboArea.Text == "")
            {
                lblArea.Visible = true;
            }
            else
            {
                lblArea.Visible = false;
            }
        }        private void txtAddress_Leave(object sender, EventArgs e)
        {
            if (txtAddress.Text == "")
            {
                lblAdress.Visible = true;
            }
            else
            {
                lblAdress.Visible = false;
            }
        }
这样写太复杂了,还有什么方法可以看上去简单谢谢各位帮忙看看

解决方案 »

  1.   

    是的,封装自己的usercontrol,事件写到usercontrol里,自己负责自己就行了
      

  2.   

    说明LZ已经注意到了
    通过父控件(比如你可以把那些需要提示的用户放到一个Panel中,或者直接放到一个List集合里)
    遍历子控件 注册事件
    foeach(var c in pnl1.Controls) //或者list
       if(c is TextBox)
            c.Leave +=  txtCustomNo_Leave;txtCustomNo_Leave(object sender, EventArgs e)方法中可以通过
    ((TextBox)send).Name或者Tag来找到相关联的Label
      

  3.   

    这样,有个取巧的方法...你的编辑框跟提示框的命名按一定规则,如:txtCustomNo,lbltxtCustomerNo
    然后private void textbox_Leave(object sender, EventArgs e)
      {
       TextBox txt = sender as TextBox;
      if (txt.Text == "")
      {
      this.Controls["lab"+txt.Name].Visible = true;
      }
      else
      {
      this.Controls["lab"+txt.Name].Visible = false;
      } 
      

  4.   


    然后每个编辑框的离开事件都绑定到textbox_Leave
      

  5.   

    winform里面吗?在文本框失去焦点的事件里面判断就是了撒