百思不得骑姐的问题——难道是控件的bug?

直接进入主题,困惑了一下午了。

要实现的功能:

winform的checkedlistbox控件

点击  “全部”  就都选上,可是如果点击过快就会出现如上现象,下面选项未显示选中。

代码如下:

 private void clbSaleDept_SelectedIndexChanged(object sender, EventArgs e)
        {
            CheckedListBox cb = sender as CheckedListBox;

            if (cb == null || cb.SelectedIndex < 0)
            {
                return;
            }
            //如果单击“全选”
            if (cb.SelectedIndex == 0)
            {
                for (int i = 1; i < cb.Items.Count; i++)
                {
                    Console.WriteLine(cb.GetItemChecked(0));
                    cb.SetItemChecked(i, cb.GetItemChecked(0));
                }
            }
            else
            {
                if (!cb.GetItemChecked(cb.SelectedIndex))
                {//当其它选项有一项未选中,则取消“全选”
                    cb.SetItemChecked(0, false);
                }
                else if (!cb.GetItemChecked(0) && cb.SelectedItems.Count >= (cb.Items.Count - 1))
                {//当其它所有选中,则选中“全选”
                    cb.SetItemChecked(0, true);
                }
            }
        }

个人在代码里面看不出什么问题。

经过写日志得出:在快速点击“全选”按钮时,并不是每次都进入该事件。

时间: 2024-11-05 17:32:37

百思不得骑姐的问题——难道是控件的bug?的相关文章

【WP8.1】系统控件的bug及修复方案

最近开发的时候,发现Windows Phone 8.1 Runtime中的两个控件的存在bug的情况,现总结出来,并给出解决方案. 1.Hub控件 Hub控件的顶部默认是可以拖动来切换HubSection的: 然而当我们将Hub的Header设置为复杂对象的时候,例如: 1 <Hub> 2 <Hub.Header> 3 <StackPanel Orientation="Horizontal"> 4 <Image Source="Ass

WebBrowser无法显示招商银行密码输入控件的问题

本文由CharlesSimonyi发表于CSDN博客:http://blog.csdn.net/charlessimonyi/article/details/30479131转载请注明出处 之前就看到CSDN论坛上有人提问,自己写的程序中的WebBrowser打开招商银行的登录页面后(https://pbnj.ebank.cmbchina.com/CmbBank_GenShell/UI/GenShellPC/Login/Login.aspx),无法显示密码输入控件,但是在IE中可以正常显示. 后

WebBrowser无法显示招商银行password输入控件的问题

本文由CharlesSimonyi发表于CSDN博客:http://blog.csdn.net/charlessimonyi/article/details/30479131转载请注明出处 之前就看到CSDN论坛上有人提问.自己写的程序中的WebBrowser打开招商银行的登录页面后(https://pbnj.ebank.cmbchina.com/CmbBank_GenShell/UI/GenShellPC/Login/Login.aspx),无法显示password输入控件,可是在IE中能够正

&lt;总结&gt;delphi WebBrowser控件的使用中出现的bug

Delphi WebBrowser控件的使用中出现的bug: 1.WebBrowser.Visible=false:Visible属性不能使WebBrowser控件不可见,暂时用 WebBrowser.Hide的方法代替,WebBrowser.Hide隐藏浏览器, WebBrowser.Show显示浏览器:    补充:WebBrowser的OnVisible事件 控制窗口的可见或隐藏,用法同上(经测试Visual属性改变时不会激发)    上述补充参考原网址:   http://www.tui

C# Winform 快速点击TreeView控件的CheckBox导致显示不同步

此为TreeView控件的BUG,快速点击时触发了双击事件,需要新建一个类重写TreeView控件 参考 https://my.oschina.net/Tsybius2014/blog/551358 博主:北风其凉

iOS不得姐项目--登录模块的布局,设置文本框占位文字颜色,自定义内部控件竖直排列的按钮

一.登录模块的布局 将一整部分切割成若干部分来完成,如图分成了三部分来完成 设置顶部状态栏为白色的方法 二.设置文本框占位文字颜色 <1>方法一与方法二实现原理是同一种,都是通过设置placeholder的NSAttributeString来设置文字属性 方法二效果图: <2>第三种方法是通过RunTime找到隐藏的可以设置placeholder颜色的属性,通过KVC来赋值.RunTime会单独拿出来讲 三.按钮自定义,重新排列子控件的排列位置

从源码中浅析Android中如何利用attrs和styles定义控件

一直有个问题就是,Android中是如何通过布局文件,就能实现控件效果的不同呢?比如在布局文件中,我设置了一个TextView,给它设置了textColor,它就能够改变这个TextView的文本的颜色.这是如何做到的呢?我们分3个部分来看这个问题1.attrs.xml  2.styles.xml  3.看组件的源码. 1.attrs.xml: 我们知道Android的源码中有attrs.xml这个文件,这个文件实际上定义了所有的控件的属性,就是我们在布局文件中设置的各类属性 你可以找到attr

MFC自绘控件学习总结

前言:从这学期开始就一直在学习自绘控件(mfc),目标是做出一款播放器界面,主要是为了打好基础,因为我基础实在是很烂....说说我自己心得体会以及自绘控件的方法吧,算是吐槽吧,说的不对和不全的地方,或者有更好的方法,请不吝赐教.我的机器环境是:Windows7旗舰版 Service Pack 1,Visual studio 20051).重绘某个控件时,强烈推荐使用子类化方法,比如想自绘Button控件, 首先添加自己的类CMYButton 继承自 CButton ,声明一个CMYButton

GridView控件通过bit值显示复选框状态

前几天用VS2013做了一个Asp.net下用GridView控件显示数据选中状态的小例子,引发了关于bit的一些新认识. 先简单说说我这个例子吧. 在VS里新建一个web窗体,然后拖入一个GridView控件,绑定Sql Server数据库里的数据源,再通过设置模板添加一个新列.在这个列中加入一个CheckBox控件,然后绑定到数据库里的字段. 开始我设置这个字段的类型为varchar,字段的值为True.False等.绑定后却无法达到想要的效果,即F5后网页内数据库isText字段值为Tru