C# WinForm 禁止控件闪烁
protected override CreateParams CreateParams { get { CreateParams cp = base.CreateParams; cp.ExStyle |= 0x02000000; // Turn on WS_EX_COMPOSITED if (this.IsXpOr2003 == true) { cp.ExStyle |= 0x00080000; // Turn on WS_EX_LAYERED this.Opacity = 1; } return cp; } } //防止闪烁 private Boolean IsXpOr2003 { get { OperatingSystem os = Environment.OSVersion; Version vs = os.Version; if (os.Platform == PlatformID.Win32NT) if ((vs.Major == 5) && (vs.Minor != 0)) return true; else return false; else return false; } }
使用该方法会让控件全部初始化完成之后同时显示,不会闪烁,但是会导致界面延迟出现。

浙公网安备 33010602011771号