winform 中如何动态获取控件

顏顏 2011-05-10 05:22:20
winform程序里面有动态生成的checkbox ,我要怎么循环获取里面被选中的checkbox的值呢?
...全文
425 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
顏顏 2011-05-11
  • 打赏
  • 举报
回复
哈哈,我弄出来了,,,,谢谢各位了!!!
顏顏 2011-05-11
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 yunhaic 的回复:]
this.Controls 一级的控件
this.Controls[index].Controls 二级的

。。。。
以此类推
[/Quote]

如果用循环要怎么写呢?
  • 打赏
  • 举报
回复
this.Controls 一级的控件
this.Controls[index].Controls 二级的

。。。。
以此类推
Mr_graceless 2011-05-11
  • 打赏
  • 举报
回复
ID是控件标识,你这种找发属于本末倒置了,应该换思路用其它方法
顏顏 2011-05-11
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 fangxinggood 的回复:]
知道控件Id吗?知道的话,用 this.Controls.Find("xxx", true); 第2个参数表示递归查找。
[/Quote]

有很多CheckBox是根据数据库数据加载的,数据库有多少条数据,就添加多少个CheckBox,我要获得的就是控件的ID,很显然只有找到控件才能获得他的ID
机器人 2011-05-10
  • 打赏
  • 举报
回复
知道控件Id吗?知道的话,用 this.Controls.Find("xxx", true); 第2个参数表示递归查找。
顏顏 2011-05-10
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 bdmh 的回复:]
C# code

foreach(CheckBox c in this.Controls)
{
MessageBox.Show(c.Text);
}
[/Quote]

这个我试过,只有一级菜单,找不到类型为CheckBox的控件,如果再套个循环,就直接跳出循环,貌似这个要用递归,但是我不会写.
机器人 2011-05-10
  • 打赏
  • 举报
回复
动态生成的时候就保留其引用。。。
bdmh 2011-05-10
  • 打赏
  • 举报
回复

foreach(CheckBox c in this.Controls)
{
MessageBox.Show(c.Text);
}

110,536

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧