因为工作中用到datagridview的重绘二位表头,导致刷新闪烁,需要双缓冲。
public Form()
{
//设置窗体的双缓冲
this.SetStyle(ControlStyles.OptimizedDoubleBuffer | ControlStyles.ResizeRedraw | ControlStyles.AllPaintingInWmPaint, true);
this.UpdateStyles();
InitializeComponent();
//利用反射设置DataGridView的双缓冲
Type dgvType = this.dataGridView.GetType();
PropertyInfo pi = dgvType.GetProperty("DoubleBuffered", BindingFlags.Instance | BindingFlags.NonPublic);
pi.SetValue(this.dataGridView, true, null);
}
{
//设置窗体的双缓冲
this.SetStyle(ControlStyles.OptimizedDoubleBuffer | ControlStyles.ResizeRedraw | ControlStyles.AllPaintingInWmPaint, true);
this.UpdateStyles();
InitializeComponent();
//利用反射设置DataGridView的双缓冲
Type dgvType = this.dataGridView.GetType();
PropertyInfo pi = dgvType.GetProperty("DoubleBuffered", BindingFlags.Instance | BindingFlags.NonPublic);
pi.SetValue(this.dataGridView, true, null);
}
作者:closewbq
来源:CSDN
原文:https://blog.csdn.net/closewbq/article/details/6457393
版权声明:本文为博主原创文章,转载请附上博文链接!
来源:CSDN
原文:https://blog.csdn.net/closewbq/article/details/6457393
版权声明:本文为博主原创文章,转载请附上博文链接!