昨晚写了个东西,自定义了一个listview控件,重写了OnColumnWidthChanging方法来控制在改变列宽时执行一些事件,刚写那会效果不错,今天再次执行竟然没用了!Debug一下发现OnColumnWidthChanging事件竟然不执行了,甚为惊讶。调试许久还是无果。于是猜测或许是listview本身的一个bug,那应该有其他朋友也遇到过此类问题,于是百度之,果然有所收获。有不少朋友碰到此类问题都是采取walkaround解决,比如重写ColumnHeader,处理Mouse事件等,但也有另外的解决方案,以下是我采用的(win7, XP类似):
右击计算机——属性——高级系统设置——高级——性能 设置——将 拖动时显示窗口内容 勾上
问题解决了,但解决方案很不方便,难道换台电脑就是先把这个给勾上?太不合理了。
解决ListView OnColumnWidthChanging无效
作者自定义了一个ListView控件并重写了OnColumnWidthChanging方法,但在运行中发现该事件不再触发。通过调整系统设置中的拖动时显示窗口内容选项解决了问题。

被折叠的 条评论
为什么被折叠?



