爱问知识人 爱问教育 医院库

在C#中怎样快速的将窗体中的各个控件清空

首页

在C#中怎样快速的将窗体中的各个控件清空

可否不是一个一个的

提交回答

全部答案

    2018-04-25 00:52:53
  •   这个比较麻烦,因为你不知道到底有多少种类型的控件,最重要的是,每种控件的清空方式都有所不同。
    例如TextBox和CheckBox的清空方式就不同。
    可以使用委托的方式来进行对象的清空。
    首先定义一个委托:
    public delegate void CleanControl(Control ctrl);//这个委托方法就是用来清空委托的。
      
    然后,使用一个键值对来存储要进行清除的控件类型和要执行的方法。
    Dictionary cleanMethodList = new Dictionary();
    拿TextBox和CheckBox举例。
      这两个方法要符合CleanControl委托。
    private void CleanTextBox(Control ctrl)
    {
    (ctrl as TextBox)。Text = string。
      Empty;
    }
    private void CleanCheckBox(Control ctrl)
    {
    (ctrl as CheckBox)。Checked = false;
    }
    在这里,还要声明一个用来初始化该方法集的方法:
    private void InitMethodList()
    {
    cleanMethodList。
      Add(TextBox, CleanTextBox);
    cleanMethodList。Add(CleanCheckBox, CleanCheckBox);
    //后续的添加,你可以放在配置文件中,也可以写在这里
    }
    最后,就是清空操作:
    void Clean()
    {
    foreach(Control item in this。
      C){
    cleanMethodList[item]。Invoke();
    }
    }
    补充:
    这种方法,可以声明成为一个类库以进行重用,将一般的控件名称和操作方法写入配置文件。
      调用的时候,当要再次使用时,添加一个对应的配置信息,引入此库即可。

    梦***

    2018-04-25 00:52:53

类似问题

换一换
  • C#/.NET 相关知识

  • 电脑网络技术
  • 电脑网络

相关推荐

正在加载...
最新资料 推荐信息 热点推荐
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200

热点检索

  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
返回
顶部
帮助 意见
反馈

确定举报此问题

举报原因(必选):