Winform ListView 窗体闪烁问题解决

摘要:
在winform编程时,ListView添加数据时控件闪烁,参考如下解决方法,得到改善。

在 winform 编程时, ListView 添加数据时 控件闪烁 , 参考如下解决方法,得到改善。

首先,自定义一个类ListViewNF,继承自System.Windows.Forms.ListView

代码如下:

 public classListViewNF : System.Windows.Forms.ListView
    {
        public ListViewNF():base()
        {
            //开启双缓冲
            this.SetStyle(ControlStyles.OptimizedDoubleBuffer | ControlStyles.AllPaintingInWmPaint, true);

            //Enable the OnNotifyMessage event so we get a chance to filter out 
            //Windows messages before they get to the form's WndProc
            this.SetStyle(ControlStyles.EnableNotifyMessage, true);
        }

        protected override voidOnNotifyMessage(Message m)
        {
            //Filter out the WM_ERASEBKGND message
            if (m.Msg != 0x14)
            {
                base.OnNotifyMessage(m);
            }

        }
    }

然后,修改我们的Form代码中定义ListView的位置,将原来的

System.Windows.Forms.ListViewlistView1;

修改为

ListViewNF listView1;

Winform ListView 窗体闪烁问题解决第1张

最后大功告成。

软件界面如下:

Winform ListView 窗体闪烁问题解决第2张

参考:https://www.cnblogs.com/zdkjob/archive/2012/01/17/2324618.html

免责声明:文章转载自《Winform ListView 窗体闪烁问题解决》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇APS技术中的多目标规划问题jquery动态实现填充下拉框下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

WinForm界面布局空间WeifenLuo.WinformUI.Docking

最近在学习Sharpdevelop的过程中,看到了使用的很好的winform页面布局控件,感觉非常的不错。实现效果如下所示:  这里我就简单的下一下他的实现步骤,当中我也看考了其他人的博客。  1) 创建一个windows Form的应用程序 2) 添加引用:WeifenLuo.WinFormsUI.Docking他是一个DLL文件,可以自行从网络上下载...

winform设计一个登录界面和修改密码的界面-自动切换窗体(问题[已解] 望一起讨论)(技术改变世界-cnblog)

http://www.cnblogs.com/IAmBetter/archive/2012/01/14/2322156.html winform设计一个登录界面和修改密码的界面-自动切换窗体(问题[已解] 望一起讨论)(技术改变世界-cnblog)需求 登录界面: 1.要求 密码 文本可以显示和隐藏 字符 password属性 2.显示输入按钮button...

WinForm控件之【RichTextBox】

基本介绍 高级文本控件,提供高级文本输入和编辑功能,如字符或段落格式的设置。 常设置属性 DetectUrls:指示是否自动将URL的格式设置为链接; EnableAutoDragDrop:是否启用文本、图片和其他数据的拖放操作; BorderStyle:指示编辑控件是否应带有边框或边框类型; Lines:多行编辑中的文本行,作为字符串值的数组; MaxL...

winform 中 MessageBox 用法大全

(转自:http://blog.csdn.net/xuenzhen123/article/details/4808005)  MessageBox.Show()共有21中重载方法。现将其常见用法总结如下:   1.MessageBox.Show(“Hello~~~~”); 最简单的,只显示提示信息。 2.MessageBox.Show(“There ar...

WinForm的RadioButton使用小技巧

有时候在一个窗体中有比较多的RadioButton,它们往往是作为取数据、业务逻辑等操作的条件。例如下图例子所示:   用户选择“全部”则会带出全部符合条件数据、选择了“已审核”则会取出全部符合条件的已经审核过后的数据.......我们一般的处理方法是每个RadioButton控件有一个CheckedChanged事件。如下面代码所示 代码       ...

ListView技巧

1)复用convertViewListView在需要显示Item的时候,会首先检查回收站里是否有缓存的item,如果发现有缓存的item,ListView会直接复用它,把它作为参数传递给Adapter的getView方法,参数名为convertView。所以如果convertView不为空,表明回收站中存在可以复用的Item,就不需要在创建新的Item了。...