• 关于CS模式下,控制一个容器内控件的值问题


         今天因为要做一个面板容器,面板容器里放了25个CheckBox控件,因为本人先排好了1-5个,然后自己随意COPY ,PASTE,而且中途还调换了很多控件的位置,最后命名的时候,虽然都是不管位置,都是1-25这样的编号编制过去的,可我再运用foreach循环的时候,确实是让我郁闷了很久,每次循环的时候,都是从ID编号15的位置开始查找,我这就纳闷了,反正我是第一次开始从事C/S模式开发,这个winForm我简直就是相当的感冒。

       后来咨询了下曾经开发C/S的朋友,他比较熟悉这块,他就说了,这个先必须在ADD的时候确立顺序,因为代码是从头至尾执行的,你先生成的控件,肯定得先去找到,呵呵,一下子如醍醐灌顶般,让我开窍了,有的时候你可能也是因为不熟悉,或者脑袋短路没及时的想到那里去,偶尔朋友帮忙,也觉得不错。见图

    然后就直接写了代码进行全选等或者不全选等:

    见代码

    if (cbPortXSelectAll.Checked)
    {
    foreach (CheckBox cb in pnlPortXSlotAll.Controls)
    {
    cb.Checked
    = true;
    }
    }
    else
    {
    foreach (CheckBox cb in pnlPortXSlotAll.Controls)
    {
    cb.Checked
    = false;
    }
    }

    我这个还要就是有个功能当你选择一部分的时候,你可能需要取部分的值,比如,我选择了就为O,不选择就是X,那这代码就是如下代码可以实现:

    自己写的,当做记录!

    
    
    public string getinfo()
    {
    string  tempSlotInfo ="";
    foreach (CheckBox cb in pnlPort1SlotAll.Controls)
    {
    if (cb.Checked)
    {
    tempSlotInfo
    += "O".ToUpper();
    }
    else
    {
    tempSlotInfo
    += "X".ToUpper();
    }
    }
    return tempSlotInfo.ToUpper().ToString();
    }
  • 相关阅读:
    spring注入原型bean
    按时间间隔查询
    Qconf安装文档
    HttpEnum
    MyIfmHttpClient
    enum StatCode
    Linux修改war包中文件
    maven settings.xml windows
    maven settings.xml linux
    docker报错
  • 原文地址:https://www.cnblogs.com/wanzegui325/p/1707792.html
Copyright © 2020-2023  润新知