我的应用程序有很多控件,尤其是在启动时闪烁非常严重。
我对它应用了这个修复方法。
protected override CreateParams CreateParams
{
get
{
CreateParams cp = base.CreateParams;
cp.ExStyle |= 0x02000000; // WS_EX_COMPOSITED
return cp;
}
}
这个方法很好用 - 闪烁现象减少了很多。然而,副作用是窗口右上角的最小化、最大化和关闭按钮在鼠标移动或点击时不会有动画效果(但它们仍然可以使用)。这给应用程序带来了一种挂起的感觉。
如何保持WS_EX_COMPOSITED的同时仍保留最大化、最小化和关闭按钮的可用性?
这个问题出现在Windows XP上。正如@fallenidol所指出的那样,在Windows 7上不存在这个问题。