zoukankan      html  css  js  c++  java
  • 全选按钮的使用。winfrom程序中,对全选按钮的理解,欢迎拍砖!

    最近在做公司项目时,用到了一些单选多选的处理情况。特编辑此文,欢迎批评指正。(有图有真相)

    winfrom程序。

    首先,需要绑定某些用户,该用于由当前登陆用户获取。

    private void BindUser()
            {
                DataTable dt = new WebService.Manage.Manage().getUsersByParentID(Main.tbl_user.ID);// 通过webservice访问数据库,根据当前登陆用户获取其子用户。
                CheckBox user = new CheckBox();
                user.Location = new Point(30, 0);
                user.Text = Main.tbl_user.U_UserName;
                user.Tag = Main.tbl_user.ID;
                panelUser.Controls.Add(user);
                for (int i = 1; i < dt.Rows.Count; i++)//循环遍历  子用户。
                {
                    CheckBox userr = new CheckBox();
                    userr.Location = new Point(30, i * 20);
                    userr.Text = dt.Rows[i - 1]["U_UserName"].ToString();
                    userr.Tag = dt.Rows[i - 1]["ID"].ToString();
                    panelUser.Controls.Add(userr);//特定的 panel 中绑定 用户名
                }
            }

    下图为绑定之后的效果:

       /// <summary>
            /// 选择“全选”,指定的panle中的 checkbox全部选中
            /// </summary>
            /// <param name="checkAllCheck">全选按钮</param>
            /// <param name="panel">其他checkbox容器</param>
            private void checkAllCheck(CheckBox checkAllCheck,Panel panel)
            {
                if (checkAllCheck.Checked)
                {
                    foreach (CheckBox check in panel.Controls)
                    {
                        check.Checked = true;

            check.Enabled = false;

           checkAllCheck.Enabled = true;// 控制 不可更改
                    }
                }
                else
                {
                    foreach (CheckBox check in panel.Controls)
                    {
                        check.Enabled = true;
                    }
                }
            }

    此图为绑定之后。单机全选按钮后的效果。此事,各个用户不可再取消选择,除非,取消全选。

  • 相关阅读:
    【Blazor】在ASP.NET Core中使用Blazor组件
    Github和Azure DevOps的代码同步
    【.NET Core】在Win10中用VS Code debug
    【UWP】利用EF Core操作SQLite
    【ASP.NET Core】mdl conflicts with tinymce
    【Windows10】如何使用Segoe MDL2 Assets图标
    Docker安装及使用,Docker 安装MySQL、安装Tomcat、安装RabbitMQ
    Anaconda安装常用配置及命令
    MySQL获取周、月、天日期,生成排序号
    Linux常用查询命令
  • 原文地址:https://www.cnblogs.com/Lin267307031/p/2671115.html
Copyright © 2011-2022 走看看