关于我们

质量为本、客户为根、勇于拼搏、务实创新

< 返回新闻公共列表

Winfrom 减少控件重绘闪烁的方法

发布时间:2020-02-24 00:00:00
  1. Winform控件的双缓冲。控件的双缓冲属性是隐藏的,可以通过反射改变其属性值。
    lv.GetType().GetProperty(, BindingFlags.Instance | BindingFlags.NonPublic).SetValue(lv, , );
    //lv为控件名称

     

  2. 重绘控件的时候开启控件双缓冲。
    this.SetStyle(ControlStyles.DoubleBuffer | 
    
          ControlStyles.UserPaint | 
          ControlStyles.AllPaintingInWmPaint,      true);this.UpdateStyles();

     

  3. 通过消息,禁用掉清除背景的消息。(TreeView控件实用)
    protected override void WndProc(ref Message m)
      {      if (m.Msg == 0x0014) // 禁掉清除背景消息  return;      base.WndProc(ref m);
      }

     


/template/Home/Zkeys/PC/Static