C#中groupBox的CheckBox。初学者有关问题
C#中groupBox的CheckBox。。。菜鸟问题C# codeforeach (Control y in groupBox1.Controls){CheckBox ca (Ch
C#中groupBox的CheckBox。。。菜鸟问题
C# codeforeach (Control y in groupBox1.Controls) { CheckBox ca = (CheckBox)y; ca.Checked = CCharToBool.CharToBool(charPurview[int.Parse(ca.Tag.ToString())]); } 在groupBox1中有N个CheckBox,上面代码中得CheckBox ca = (CheckBox)y; 是神马意思?
还有ca.Tag.ToString()返回的是什么?
另外,如果我在一个groupBox中添加很多歌CheckBox,如20个,怎么知道哪个是第几个?
刚接触Winform的东东,很多不懂。。。。
[解决办法] 你前台添加的那么多个CheckBox的话,每个都有一个唯一标识的ID,就通过这个来区分是哪个。
就像咱中国有这么多人,怎么区分?每个人都有一个身份证的嘛
C# codeforeach (Control c in groupBox1.Controls){ //只遍历CheckBox控件 if (c is CheckBox) { if(c.Checked) { MessageBox.Show("被选中的CheckBox有:"+c.ID); } }}[解决办法] CheckBox ca = (CheckBox)y; 这个将Control转换成CheckBox,因为Control是CheckBox的父类,所以要强制转换 Tag属性可以用来存取数据,ca.Tag.ToString()是获取Tag属性的值,Tag属性的类型是Object[解决办法] 向下转型[解决办法] 另外,如果我在一个groupBox中添加很多歌CheckBox,如20个,怎么知道哪个是第几个? 这个问题你可以看控件属性里的 Tabindex[解决办法] 强制转换[解决办法] 强制转换[解决办法] CheckBox ca = (CheckBox)y; 的意思是: 将y强制转化为CheckBox类型对象,赋值于ca。 ca.Tag.ToString(); 返回的是控件ca的tag值。Tag值可读可写。 groupBox中的每一个CheckBox控件都有TabIndex属性,且默认从0开始,可根据此值确定CheckBox是第几个。[解决办法] 探讨 foreach (Control y in groupBox1.Controls) { CheckBox ca = (CheckBox)y; ca.Checked = CCharToBool.CharToBool(charPurview[int.Parse(ca.Tag.ToString())]); } 在groupBox1中有N个CheckBox,上面代码中得CheckBox ca = (CheckBox)y; 是神马意思? 还有ca.Tag.ToString()返回的是什么? 另外,如果我在一个groupBox中添加很多歌CheckBox,如20个,怎么知道哪个是第几个?[解决办法] 探讨 CheckBox ca = (CheckBox)y; 的意思是: 将y强制转化为CheckBox类型对象,赋值于ca。 ca.Tag.ToString(); 返回的是控件ca的tag值。Tag值可读可写。 groupBox中的每一个CheckBox控件都有TabIndex属性,且默认从0开始,可根据此值确定CheckBox是第几个。