当前位置:编程学习 > C#/ASP.NET >>

winform

动态生成的控件  有5个groupbox  每个groupbox里有5个checkbox

怎么控制每个groupbox取的只是其本身里边的checkbox  就是第一个groupbox只遍历第一个里边的checkbox
private void GetControl(Control control)
        {
            foreach (Control con in gb.Controls)
            {
                if (con is CheckBox)
                {
                    CheckBox cb = (con as CheckBox);
                    if (cb.CheckState == CheckState.Checked)
                    {
                        switch (cb.TabIndex)
                        {
                            case 1: count = count + 1; break;
                            case 2: count = count + 2; break;
                            case 3: count = count + 4; break;
                            case 4: count = count + 8; break;
                            case 5: count = count + 16; break;
                        }
                    }
                }
                if (con is GroupBox)
                {
                    GetControl(con as GroupBox);
                }
                if (con is Panel)
                {
                    GetControl(con);
                }
            }
        }


我想  有五个groupbox 显示五个值  但是我弄的只显示一个(显示的是所有checkbox的值)   后边的代码怎么写呢      我初学  不知道说清楚没有 --------------------编程问答-------------------- 没看明白你什么意思 --------------------编程问答-------------------- Parent  属性看看 box的 父控件是不是这个 gb --------------------编程问答-------------------- 有点乱,首先你的GetControl方法中的参数control一直没调用过
foreach语句中,遍历的是gb中的控件,gb是什么,groupbox么,如果是的话,gb里面还有groupbox和panel么,你重新整理一下思路吧 --------------------编程问答--------------------
引用 3 楼 stiff_neck 的回复:
有点乱,首先你的GetControl方法中的参数control一直没调用过
foreach语句中,遍历的是gb中的控件,gb是什么,groupbox么,如果是的话,gb里面还有groupbox和panel么,你重新整理一下思路吧


不好意思  foreach (Control con in gb.Controls)改成foreach (Control con in control.Controls) 

我想用 1 2 4 8 16 判断答案对错 但是我的代码 得到的是5个groupbox里的所有选中的checkbox的值的和

我想问怎么得到5个值呢  每个groupbox一个值  我试过嵌套foreach  但是我实现不了  能给段代码吗 --------------------编程问答-------------------- checkbox在groupbox 上  groupbox在 panel上 --------------------编程问答-------------------- CheckBox cb = panel1.Controls.OfType<CheckBox>().First(); --------------------编程问答--------------------
引用 6 楼 caozhy 的回复:
CheckBox cb = panel1.Controls.OfType<CheckBox>().First();


版主能说详细点吗  我刚学
补充:.NET技术 ,  C#
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,