ITPub博客

首页 > > > 如何解决WinForm窗体不是卡顿就是闪烁的问题

如何解决WinForm窗体不是卡顿就是闪烁的问题

作者:flynike 时间:2019-08-23 16:47:07 0 删除 编辑
项目是这样设计的,一个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/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2019-07-26

  • 博文量
    205
  • 访问量
    9818