首页 > > > 如何解决WinForm窗体不是卡顿就是闪烁的问题
项目是这样设计的,一个BaseForm的基类保存全局静态对象(不知道这个有没有影响)。
子窗体使用MDI的方式显示,会使用到Panel容器和DataGridView做列表。
问题是子窗体显示的时候会闪烁,有明显的绘制过程,而且拖动会闪烁。找了网上的一些解决方案,不闪了,只是会很卡,在拖动子窗体时会有0.5秒左右的停滞感。
子窗体除了基本的响应事件还有一个SizeChanged调节窗体元素位置的事件
解决闪烁的代码是
protected override CreateParams CreateParams
{
get
{
CreateParams cp = base.CreateParams;
cp.ExStyle |= 0x02000000; // Turn on WS_EX_COMPOSITED
return cp;
}
}
之前一直做web,WinForm不大会,这个如何解决呢?来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/2618/viewspace-3119664/ ,如需转载,请注明出处,否则将追究法律责任。