最近在开发项目的过程中,发现了系统经常会出现闪屏的现象,而启用双缓存后可以有效的解决这一问题。

同时为了方便引用开发了一个具备了双缓存的Panel控件。其实要启用双缓存很简单,只需要在控件或者窗体的构造函数

中加入以下的3行代码即可。扩展其它控件也是如此。关于双缓存的介绍请见上次转载的文摘

解决绘图中闪烁的问题(C#) 有介绍。


     public class PanelEx:Panel
    {
        public PanelEx()
        {
            SetStyle(ControlStyles.UserPaint, true);
            SetStyle(ControlStyles.AllPaintingInWmPaint, true);   //   禁止擦除背景.
            SetStyle(ControlStyles.DoubleBuffer, true);   
        }
    }