关于解决winform控件过多导致闪烁问题
项目一如既往的进行着,修改各种bug。他们说软件打开的时候会有刷屏的现象不美观,说这是一种病,于是google、CSDN各种查,很多都祭出双缓冲来解决。
SetStyle(ControlStyles.DoubleBuffer | ControlStyles.OptimizedDoubleBuffer | ControlStyles.AllPaintingInWmPaint, true);
UpdateStyles();
或者
SuspendLayout();
// do something。
// 恢复正常的布局逻辑,可以选择强制对挂起的布局请求立即进行布局。
ResumeLayout(false); // 强制控件将布局逻辑应用于子控件。
PerformLayout();
还有各种高深的说,看不懂,没有试验过,但是上面两种都无果,依旧的闪亮。
看到说关于透明图片的问题,然后有人说了最好不要使用panel,可以使用picturebox减缓。
看了下自己的panel,换成picturebox,瞬间漂亮了万分。竟然可以这么解决。
下面一篇文章给出产生闪烁的原因(
Windows 程序界面闪烁问题的一些经验)http://www.cxybl.com/html/net/winform/201110044851.html
然后是我看过的讨论比较激烈的帖子:http://topic.csdn.net/u/20091228/12/6d39d772-c119-4fbb-be3f-adee12d895bb.html
依旧不明其原因。最近准备去看看数据结构,然后是操作系统,希望可以从源头上面补补课