您的位置:首页 > 编程语言 > C#

C#使用双缓存减少界面闪烁

2017-11-02 15:38 183 查看
场景:一个panel中动态加载多个自定义控件item,类似QQ聊天窗口

问题:加载panel时界面会卡顿,先显示阴影再显示界面;移动滚动条时item会闪烁

解决方法:

panel 添加方法,减少界面闪烁:

protected override CreateParams CreateParams
{
get
{
CreateParams cp = base.CreateParams;
cp.ExStyle |= 0x02000000;
return cp;
}
}


item构造函数中添加代码,减少移动滚动条时闪烁:

//构造函数
public item()
{
SetStyle(
ControlStyles.AllPaintingInWmPaint |    //不闪烁
ControlStyles.OptimizedDoubleBuffer    //支持双缓存
,true);
InitializeComponent();
}


网络限制不能复制,代码手打的,可能拼写有错
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: