首页 新闻 搜索 专区 学院

c# winform 里有10个textbox,1个按钮,如何在10个textbox都填写内容后设置按钮有效,否则无效?

0
悬赏园豆:20 [待解决问题]

c# winform 里有10个textbox,1个按钮,如何在10个textbox都填写内容后设置按钮有效,否则无效?

请各位帮帮忙.

小堆爸的主页 小堆爸 | 初学一级 | 园豆:7
提问于:2011-05-16 11:52
< >
分享
所有回答(3)
0

在10个textbox 的失去焦点的事件或验证事件里都调用一个方法来判断这10个textBox是否有没有内容的,如果没有就设置按钮有效!

例如:private  bool  IsAllHaveData(){

      bool   IsAllHave=true;

         //可以事先把这10个textBox放在一个集合中

        for(int i=0;i<txts.Count;i++){

                 if(string.isNullOrEmpty(txts[i].Text)){

                         IsAllHave=false;

                 }

          }

return  IsAllHave;

        }

调用:

   if(IsAllHaveData()){

    this.button.Enable=true;

  }else{

     this.button.Enable=false;

  }

 

Michelle 米雪儿 | 园豆:209 (菜鸟二级) | 2011-05-16 12:24
0

在TextBox失去焦点或者文字改变的时候都可以啊!!

 private void textBox_TextChanged(object sender, EventArgs e)
        {
            bool IsAllHave = true;

            //可以事先把这10个textBox放在一个集合中

            foreach (var item in GroupTextBox.Controls)
            {
                if (item is TextBox)
                {
                    TextBox txt = item as TextBox;
                    if(string.IsNullOrEmpty(txt.Text))
                    {
                        IsAllHave = false;
                    }
                }
            }
            if (IsAllHave)
            {
                button1.Visible = true;
            }
            else
            {
                button1.Visible = false;
            }

        }

 博客园不能上传图片说明,我在新浪上弄了一个,你看看功能符合不:

http://blog.sina.com.cn/s/blog_4c0e8aa20100rlbg.html

山石晓月 | 园豆:267 (菜鸟二级) | 2011-05-16 13:36
那要响应10个textBox_TextChanged事件咯,如果有30个textbox呢?就要30个咯,我在想,有更好的方法吗?
支持(0) 反对(0) 小堆爸 | 园豆:7 (初学一级) | 2011-05-16 14:22
其实30个也不难啊,都选上统一给一个事件就完了啊!你的需求究竟是什么啊?弄的都迷糊了!!!!这个感觉也不耗资源啊。。。
支持(0) 反对(0) 山石晓月 | 园豆:267 (菜鸟二级) | 2011-05-16 16:08
其实我想找到一个任何控件改变内容都会触发的事件,而不需要每个控件添加事件.
支持(0) 反对(0) 小堆爸 | 园豆:7 (初学一级) | 2011-05-16 16:13
我这次没用TextBox的onchange事件,这次用了个panel,你再看看行不...
支持(0) 反对(0) 山石晓月 | 园豆:267 (菜鸟二级) | 2011-05-16 16:23
如果他只用TAB和键盘输入,不用鼠标,那就不行了.
我在想,winform有没有想mfc的PreTranslateMessage呢?
支持(0) 反对(0) 小堆爸 | 园豆:7 (初学一级) | 2011-05-16 17:41
额!C++学的不好,mfc没咋用过,不知道你说的东西是什么...看来帮不了你了哦!!!
支持(0) 反对(0) 山石晓月 | 园豆:267 (菜鸟二级) | 2011-05-16 18:34
0

弄一个时钟控件,可以几秒或者多少分钟来触发一次。然后在你确定不用的时候把timer停掉,然后在你有可能用的时候就把timer开出来。。。

马战鹏 | 园豆:432 (菜鸟二级) | 2011-05-16 14:00
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册