相关疑难解决方法(0)

如何修复用户控件中的闪烁

在我的应用程序中,我不断从一个控件移动到另一个控件.我创造了没有.用户控件,但在导航过程中我的控件闪烁.更新需要1或2秒.我试着设置这个

SetStyle(ControlStyles.OptimizedDoubleBuffer, true);
or
SetStyle(ControlStyles.UserPaint, true);
SetStyle(ControlStyles.AllPaintingInWmPaint, true); 
SetStyle(ControlStyles.DoubleBuffer, true);
Run Code Online (Sandbox Code Playgroud)

但它没有帮助......每个控件都有相同的背景图像和不同的控件.那么它的解决方案是什么..
谢谢.

c# user-controls flicker winforms

105
推荐指数
4
解决办法
9万
查看次数

在Windows窗体应用程序中闪烁

我有一个应用程序,它有很多控件.并且它有大量的闪烁,特别是在启动时.

我将此修复程序应用于它.

    protected override CreateParams CreateParams
    {
        get
        {
            CreateParams cp = base.CreateParams;
            cp.ExStyle |= 0x02000000;   // WS_EX_COMPOSITED
            return cp;
        }
    } 
Run Code Online (Sandbox Code Playgroud)

这很有效 - 闪烁的数量减少了令人难以置信的数量.但是,副作用是当我将鼠标移动或单击它们时,窗口右上角的最小化,最大化和关闭按钮不会生成动画(尽管它们仍在工作).这给了应用程序一种感觉.

如何在保留最大化,最小化和关闭按钮的可用性的同时保留WS_EX_COMPOSITED?

这种情况发生在Windows XP上.正如@fallenidol所指出的,这不是Windows 7上的问题.

c# flicker winforms createparams

22
推荐指数
2
解决办法
2万
查看次数

标签 统计

c# ×2

flicker ×2

winforms ×2

createparams ×1

user-controls ×1