WinForm 清空界面控件值的小技巧

WinForm 清空界面控件值的小技巧
原文:WinForm 清空界面控件值的小技巧

在WinForm里面有时候需要清空自己输入内容或是选择的选项,以便重新操作流程,那么一般你是怎么清空界面各个控件值的呢?如果窗体里面控件,尤其是TextBox控件比较多的时候,代码里面是不是要设置每个控件的Text属性值为空呢?下面我用这个例子,来探讨下清空界面控件值的小技巧。而且还能复用。不必每个窗体都做这些枯燥、无聊的工作。


一般的做法是在清除控件的事件里面添加下面这样的代码:

ExpandedBlockStart.gif代码
       private void btnClear_Click(object sender, EventArgs e)
        {
            
this.txbAccount.Text = "";
            
this.txbAddress.Text = "";
            
this.txbCmp.Text = "";
            
this.chkCash.Checked = false;
            
this.cmbDepart.Text = "";

            
//.............窗体里面各类要清空控件;
        }

 

 设想如果这样做,一个窗体我们清空界面需用10行代码,50个窗体那么就是500行代码,大量重复的劳动,如果我们用下面这种方法的话,那么项目里面代码量将大大减少,而且封装到类里面,可以重用。(当然这个函数还可以重载、扩展,以便适应不同的需求)

private void btnClear_Click(object sender, EventArgs e)
{
     ClearCntrValue(
this.pnlContent);
}

 

 

ExpandedBlockStart.gif代码
/// <summary>
        
/// 清除容器里面某些控件的值
        
/// </summary>
        
/// <param name="parContainer">容器类控件</param>
        public void ClearCntrValue(Control parContainer)
        {
            
for (int index = 0; index < parContainer.Controls.Count; index++)
            {
                
// 如果是容器类控件,递归调用自己
                if (parContainer.Controls[index].HasChildren)
                {
                    ClearCntrValue(parContainer.Controls[index]);
                }
                
else
                {
                    
switch(parContainer.Controls[index].GetType().Name)
                    {
                        
case "TextBox":
                            parContainer.Controls[index].Text 
= "";
                            
break;
                        
case "RadioButton":
                            ((RadioButton)(parContainer.Controls[index])).Checked 
= false;
                            
break;
                        
case "CheckBox":
                            ((CheckBox)(parContainer.Controls[index])).Checked 
= false;
                            
break;
                        
case "ComboBox":
                            ((ComboBox)(parContainer.Controls[index])).Text 
= "";
                            
break;
                    }
                }
            }
        }

 

 

 

 

posted on 2016-05-09 02:26 NET未来之路 阅读(...) 评论(...) 编辑 收藏

转载于:https://www.cnblogs.com/lonelyxmas/p/5472462.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/457954.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

int 取值范围_一定范围内的随机数

老司机的新问题&#xff0c;取得[min, max]范围的随机数。C版本的rand函数很不容易用对&#xff0c;直接用rand() % (max - min 1) min&#xff0c;这个公式不对。这个公式与取最低位的算法相同&#xff0c;而随机数的最低几位不一定等概率。Donald Knuth博士教导我们正确的用…

virsh的使用

2019独角兽企业重金招聘Python工程师标准>>> ###这里最先要完成的是对网卡的配置(os ubuntu14.04) 目的是实现vm上是以桥接的方式联网 修改/etc/network/interfaces # interfaces(5) file used by ifup(8) and ifdown(8) auto lo iface lo inet loopback #auto eth0…

嵌入式常见笔试题总结(4)

1&#xff1a;用C语言实现大小端的测试 Int CheckCpu() { union { int a; char b; }c; c.a1; if(c.b1) printf(“小端”)&#xff1b; else printf&#xff08;“大端”&#xff09;&#xff1b; } 2&#xff1a;volatile的作用有哪些&#xff1f; Volatile第一变量相当于告诉编…

《java入门第一季》之类String类小案例

String类有许多获取方法&#xff0c;API文档里面可查看。针对获取方法&#xff0c;给出小案例。 /** 需求&#xff1a;遍历获取字符串中的每一个字符* 分析&#xff1a; 用到两个方法&#xff1a;char charAt(int index) 表示获取字符串指定索引的字符int length() …

同字母异序词 python_49. 字母异位次分组(Python)

题目 给定一个字符串数组&#xff0c;将字母异位词组合在一起。字母异位词指字母相同&#xff0c;但排列不同的字符串。 说明 所有输入均为小写字母。 不考虑答案输出的顺序。 示例 输入: ["eat", "tea", "tan", "ate", "nat&quo…

嵌入式常见笔试题总结(5)

1、 如何在C中初始化一个字符数组。这个问题看似很简单&#xff0c;但是我们要将最简单的问题用最严谨的态度来对待。关键的地方&#xff1a;初始化、字符型、数组。最简单的方法是char array[];。这个问题看似解决了&#xff0c;但是在初始化上好像还欠缺点什么&#xff0c;个…

SQL Server - 高可用与灾难恢复(HADR)技术 -- AlwaysOn可用性组(理论篇)

因为篇幅原因&#xff0c;AlwaysOn可用性组被拆成了两部分&#xff1a;理论部分和实战部分。而实战部分又被拆成了准备工作和AlwaysOn可用性组搭建。 三篇文章各自的链接&#xff1a; SQL Server ->> 高可用与灾难恢复&#xff08;HADR&#xff09;技术 -- AlwaysOn&…

嵌入式常见笔试题总结(6)

一、常识理论题 1、 简述嵌入式操作系统有哪些&#xff0c;你用过哪几种&#xff0c;简述其特点、优势及劣势&#xff1f;(5分) 2、 请描述控制及提高嵌入式软件质量有哪些办法&#xff0c;在开发过程中怎么才能保证嵌入式软件的可靠性&#xff1f;&#xff08;5分&#xff09;…

python 3.6.5编译安装_Linux系统安装Python3.6.5

Linux系统安装Python3.6.5 1、下载Python3.6.5 wget https://www.python.org/ftp/python/3.6.5/Python-3.6.5.tgz 如果报command not found则执行&#xff1a;yum -y install wget命令后再进行下载 也可下载好安装包进行手动上传 2、安装Python3.6可能使用的依赖 yum install o…

从传统运维到云运维演进历程之软件定义存储(一)

运维是企业业务系统从规划、设计、实施、交付到运维的最后一个步骤&#xff0c;也是重要的步骤。运维从横向、纵向分可以分为多个维度和层次&#xff0c;本文试图抛开这纷繁复杂的概念&#xff0c;讲述一个传统的企业级运维人员转型到云运维人员&#xff0c;尤其是软件定义存储…

Abp Uow 设计

初始化入口 在AbpKernelModule类中&#xff0c;通过UnitOfWorkRegistrar.Initialize(IocManager) 方法去初始化 1 /// <summary>2 /// This class is used to register interceptor for needed classes for Unit Of Work mechanism.3 /// </summary>4 …

python3.8 实现鼠标自动移动_“新生报到”!【移动机器人 HD-1500】负载1500kg,实现了重型货物运输的自动化...

2020年第三季度欧姆龙自动化&#xff08;中国&#xff09;有限公司新品【移动机器人 HD-1500】即日起在中国市场首次对外发布&#xff0c;实现了重型货物运输的自动化。这款最新的自动化移动机器人重型载荷能力为1500 kg&#xff01;更高的载荷能力可以令客户实现以前无法实现的…

Linux 关闭服务后 鼠标 键盘用不了

大部分情况下我们做实验都是使用虚拟机&#xff0c;但是个人比较本实在太老了&#xff0c;性能有限&#xff0c;所以虚拟机里面的系统启动神慢&#xff0c;怎么办&#xff1f;把系统中自己用不到的服务全部关闭掉呗&#xff0c;如下for i in chkconfig --list | awk {print $1}…

对session的理解

java Servlet API引入session 机制来跟踪客户的状态&#xff0c;session指的是在一段时间内&#xff0c;单个客户和web服务器之间一连串的交互过程&#xff0c;在一个session中&#xff0c;一个客户可能会多次请求同一个网页&#xff0c;也可能请求多个不同服务器资源&#xff…

android 监听本机网络请求_fiddler如何抓取https请求实现fiddler手机抓包-证书安装失败100%解决...

一、HTTP协议和HTTPS协议。(1) HTTPS协议HTTP协议SSL协议&#xff0c;默认端口&#xff1a;443(2) HTTP协议&#xff08;HyperText Transfer Protocol&#xff09;&#xff1a;超文本传输协议。默认端口&#xff1a;80&#xff0c;其中包含请求和响应两部分&#xff0c;其中请求…

c语言笔试题总结2

下列各题A)、B)、C)、D)四个选项中&#xff0c;只有一个选项是正确的&#xff0c;请将正确选项涂写在答题卡相应位置上&#xff0c;答在试卷上不得分。(1)算法的时间复杂度是指_______。A)执行算法程序所需要的时间B)算法程序的长度C)算法执行过程中所需要的基本运算次数D)算法…

C#的四舍五入函数

2019独角兽企业重金招聘Python工程师标准>>> 1.四舍六入&#xff08;国外的四舍五入&#xff09; Math.Round&#xff08;num&#xff09;; 2.四舍五入 Math.Round(num,MidpointRounding.AwayFromZero); 转载于:https://my.oschina.net/CrazyBoy1024/blog/746268

C语言笔试题总结3

4. static有什么用途&#xff1f;&#xff08;请至少说明两种&#xff09;1.限制变量的作用域2.设置变量的存储域7. 引用与指针有什么区别&#xff1f;1) 引用必须被初始化&#xff0c;指针不必。2) 引用初始化以后不能被改变&#xff0c;指针可以改变所指的对象。2) 不存…

【BZOJ2243】 [SDOI2011]染色

Description 给定一棵有n个节点的无根树和m个操作&#xff0c;操作有2类&#xff1a; 1、将节点a到节点b路径上所有点都染成颜色c&#xff1b; 2、询问节点a到节点b路径上的颜色段数量&#xff08;连续相同颜色被认为是同一段&#xff09;&#xff0c;如“112221”由3段组成&am…

jquery easyui DataGrid 数据表格 属性

扩展自 $.fn.panel.defaults &#xff0c;用 $.fn.datagrid.defaults 重写了 defaults 。 依赖 panelresizablelinkbuttonpagination用法 1. <table id"tt"></table> 1. $(#tt).datagrid({ 2. url:datagrid_data.json, 3. columns:[…