zoukankan      html  css  js  c++  java
  • C# Winform继承窗体打开设计器白屏的一例解决方法

    环境VS2017 15.5.4,Win10
    开发过程中,发现一些窗体打开设计器会卡死白屏,另外有一些不会,(两者运行时正常),最小化vs后甚至能把工具箱连带搞黑,严重影响开发效率,经过一天多的对比研究,终于解决,
    猜测可能是VS的BUG,多年前做VC程序时遇到BUG,向微软提交,微软开发人员也会推诿,这里分享一下解决办法,以免大家踩坑。


    重现方法:

    1、父窗体类Form1:Form,子窗体类Form2:Form1
    2、Form1里加入代码,编译

    protected override CreateParams CreateParams
            {
                get
                {
                    const int CS_NOCLOSE = 0x200;
                    CreateParams cp = base.CreateParams;
                    cp.ClassStyle = cp.ClassStyle | CS_NOCLOSE;
                    cp.ExStyle |= 0x02000000;
                    return cp;
                }
    
            }


    3、打开子窗体设计器时,子窗体上不管摆什么控件,子窗体都是白屏,用鼠标点击一下有时候能恢复,如果项目中打开窗体多了不能恢复,如果这时候最小化vs,会如上黑屏,影响心情。
    解决方法:
    在子窗体上拖一个Panel,设置为Fill(注意不能留一点空白,Form2不要设置Padding之类的,只要设置一点就会白屏。),然后所有的新控件都摆在这个Panel上吧。
    然后可以解决问题了。测试代码在 QQ群:616945527,博客相关资源,Test(继承窗体白屏),

    4、另一种解决办法

    原创内容,转载请保留出处
    http://www.cnblogs.com/zhaogaojian/p/8440473.html 

  • 相关阅读:
    mysql分组排序取组内第一的数据行
    C#版Nebula客户端编译
    关于nginx
    http状态码
    gitlab
    TCP/IP 3次握手和四次断开
    nps 内网穿透
    用CentOS7做一个简单的路由器
    linux 简单特效
    LVS粗讲
  • 原文地址:https://www.cnblogs.com/zhaogaojian/p/8440473.html
Copyright © 2011-2022 走看看