当前位置:首页 >> 编程开发 >> C# >> 内容

C#窗体应用开发问题

时间:2023/3/19 23:45:06 作者:不详 来源:网络 浏览:

,

双缓冲模式DoubleBuffered解决DataGridView重绘慢的问题

Winform的DataGridView在绑定比较多的数据后,每次选中不同单元格或者下拉滚动条时,DataGridView重绘都非常慢,明显看到它从上往下一行一行重绘,这种感觉非常卡顿。


其实这个问题在.NET程序员中早就有讨论,且有了解决方案,办法就是用打开双缓冲模式 DoubleBuffered。但是DataGridView根本找不到这个属性,因为这个属性默认时被隐藏的。不过不要紧,高手们想出了用反射来设置这个属性的方法,具体代码如下。


可以把下面的代码放到Form_OnLoad()事件中,其中dataGridView1就是你要设置属性的dataGridView1实例名。

Type dgvType = this.dataGridView1.GetType();

PropertyInfo pi = dgvType.GetProperty("DoubleBuffered", BindingFlags.Instance | BindingFlags.NonPublic);

pi.SetValue(this.dataGridView1, true, null);


窗体启动慢

删除窗口load事件,是否能够解决


  • 上一篇:c#小数百分数格式化
  • 下一篇:没有了
  • 共有评论 0相关评论
    发表我的评论
    • 大名:
    • 内容:
    本类推荐
    • 暂无信息
    本类固顶
    • 暂无信息
  • 徐汉涛(www.xuhantao.com) © 2024 版权所有 All Rights Reserved.
  • 部分内容来自网络,如有侵权请联系站长尽快处理 站长QQ:965898558(广告及站内业务受理) 网站备案号:蒙ICP备15000590号-1