C#遍历窗体控件(原文出自http://www.liangshunet.com/ca/201403/286434593.htm)
一、C#遍历窗体控件
主要遍历属于窗体(Form)的控件(Controls),假如窗体中有 Panel、Button 和 TextBox 控件,遍历代码如下:
/// <summary>
/// Winform C#遍历窗体控件
/// </summary>
/// <param name="ctrlName">控件名称</param>
public void ForeachFormControls(string ctrlName)
{
foreach (Control ctrl in this.Controls)
{
if (ctrl is Panel)
{
//相关操作代码
ctrl.BackColor = Color.Aquamarine;
} else if (ctrl is Button)
{
ctrl.ForeColor = Color.RoyalBlue;
}
else if (ctrl is TextBox)
{
ctrl.Text = null;
}
//根据控件名称找某个控件
if(ctrl.Name.Equals(ctrlName))
{
vctrl.Name = string.Empty;
}
}
}
上面的代码,只是根据控件的类型和传递的控件名称进行了一些随意操作,可以根据具体需求把它改为所需操作。
二、C# Winform遍历控件之遍历 Panel 中的子控件
遍历方法跟遍历窗体中的控件相同,只不过 this 要改为 Panel 的名称,假如 Panel控件中只包含 Button 和 TextBox 子控件,代码如下:
/// <summary>
/// C#遍历子控件
/// </summary>
/// <param name="ctrlName">控件名称</param>
public void ForeachPanelControls(string ctrlName)
{
foreach (Control ctrl in panel1.Controls)
{
if (ctrl is Button)
{
if (ctrl.Name.Equals(ctrlName))
ctrl.ForeColor = Color.RoyalBlue;
else
ctrl.ForeColor = Color.SkyBlue;
}
else if (ctrl is TextBox)
{
if (ctrl.Name.Equals(ctrlName))
ctrl.Name = "当前值";
else
ctrl.Text = null;
}
}
}
C#遍历窗体控件(原文出自http://www.liangshunet.com/ca/201403/286434593.htm)的更多相关文章
- C# 遍历窗体控件顺序问题
今天在做C# winform 窗体控件遍历时遇到控件顺序的问题,也就是控件被遍历的先后问题.实际情况如下所述. 窗体界面如下: 界面构成是:主界面有一个 Panel (Panel_14),Panel_ ...
- VC遍历窗体控件的实现
最近在写控制台,在设计界面按钮风格时不想通过每个按钮的ID来获取其句柄,而是通过遍历窗体所有控件,然后判断其控件类型进而来实现. 代码如下: // 遍历得到页面中的所有Button控件,依次设定其样式 ...
- c# 遍历子控件,比如Form下的group,或者panel
方法很好用.目的是遍历所有容器的子控件... 方法1private void GetControl(Control.ControlCollection ctc, ref int checkNull) ...
- ASP.NET中 WebForm 窗体控件使用及总结【转】
原文链接:http://www.cnblogs.com/ylbtech/archive/2013/03/06/2944675.html ASP.NET中 WebForm 窗体控件使用及总结. 1.A, ...
- winform继承窗体,无法修改父窗体控件问题处理笔记
问题描述: 一个窗体集成父窗体,发现无法直接修改父窗体的控件,比如修改大小等,父窗体控件已经设置为public,如果做成一个dll被引用无此问题 特征: 不禁使父窗体控件,就算新加一个控件也会这样:鼠 ...
- c#中如何跨线程调用windows窗体控件
c#中如何跨线程调用windows窗体控件? 我们在做winform应用的时候,大部分情况下都会碰到使用多线程控制界面上控件信息的问题.然而我们并不能用传统方法来做这个问题,下面我将详细的介绍.首 ...
- C# winform 跨线程更改窗体控件的属性
当winform程序中新开一个线程,是无法改变主线程中窗体控件的属性的,否则运行时会报错. 若想在其他线程中控制主线程中的窗体控件,则必须利用BeginInvoke方法. 例如:添加一个名为textb ...
- winform窗体控件(全)
回顾跟补充下除了昨天那常用6个其他的winform窗体控件作用 1:Button:按钮 (1)AutoSize:如果是True的情况下,内容将会撑开:False的话会另起一行 (2)Enabled: ...
- (转)sl简单自定义win窗体控件
sl简单自定义win窗体控件 相信大家接触过不少win窗体控件ChildWin子窗口就的sl自带的一个 而且网上也有很多类似的控件,而今天我和大家分享下自己制作个win窗体控件,希望对初学 ...
随机推荐
- NGRC远程控制
这是大三学完计算机网络的课程之后开始写的东西,后来慢慢完善到能用的程度. 界面大概是这样 还有这样 使用Java的好处是不用修改就可以在Mac和Linux上运行(测试过Ubuntu和OS X) 缺点是 ...
- openStack云平台虚拟桌面galera mysql 3节点集群实例实战
- UCloud EIP 你真的懂得如何使用么? - SegmentFault
UCloud EIP 你真的懂得如何使用么? - SegmentFault UCloud EIP 你真的懂得如何使用么?
- 爬虫技术浅析 | WooYun知识库
爬虫技术浅析 | WooYun知识库 爬虫技术浅析 好房通ERP | 房产中介软件最高水准领导者 undefined
- linux驱动开发之HelloWorld
最近实习,公司项目搞的是平板开发,而我分配的任务是将驱动加载到内核中. 准备工作,必要知识了解:加载有两种方式,一种是动态加载和卸载即模块加载,另一种是直接编译进入内核:Linux内核把驱动程序划分为 ...
- 更改Tomcat startup.bat启动窗口名称
通常在Tomcat bin目录下用startup.bat启动Tomcat ,启动窗口显示的Title是Tomcat 如果遇到一个服务器上多个Tomcat的话就会容易混淆.更改方法如下: 1 在bin目 ...
- 开发期间的GWT设置---加快编译速度
随着项目功能的完善,GWT模块(Module)越来越多,当要以web模式编译给测试组使用时,编译的总时间越来越多,我的机器编译完8个模块,需要10分钟左右. 抽空研究了一下GWT的编译参数和GWT编译 ...
- JDK6 下载地址
http://www.oracle.com/technetwork/java/javasebusiness/downloads/java-archive-downloads-javase6-41940 ...
- MySQL字符串函数
字符串大写和小写转换 MySQL 字符串大写和小写转化函数有两对: lower(), uppper() 和 lcase(), ucase() mysql> select lower('DDD') ...
- android 04 AbsoluteLayout
绝对布局:layout_x,layout_y:坐标精准定位 xml文件:不推荐使用 <AbsoluteLayout xmlns:android="http://schemas.andr ...