C#解决动态显示控件闪烁,使Windows Forms启用双缓冲于所有窗体以及其子控件就不闪了。
在SDK头文件中有这样一个Windows样式:WS_EX_COMPOSITED,这个样式可使Windows Forms启用双缓冲于所有窗体以及其子控件。
protected override CreateParams CreateParams{get{CreateParams cp = base.CreateParams;cp.ExStyle |= 0x02000000;return cp;}}
网上说的不对。
public Form1(){InitializeComponent();base.SetStyle(ControlStyles.OptimizedDoubleBuffer| ControlStyles.ResizeRedraw| ControlStyles.Selectable| ControlStyles.AllPaintingInWmPaint // 禁止擦除背景.| ControlStyles.UserPaint| ControlStyles.SupportsTransparentBackColor| ControlStyles.DoubleBuffer // 双缓冲,true);}
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:https://dhexx.cn/news/show-6487817.html
如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网进行投诉反馈,一经查实,立即删除!