• 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 

  • 相关阅读:
    uwsgi
    protobuf c++ API
    memcached 第二篇----安装使用
    ice grid配置使用第二篇------实际使用
    ICE BOX 配置,使用----第一篇
    可视化资料收集
    Protocol Buffers
    ice grid 完整部署过程
    django组件之ajax
    关于Django在写小项目的一些小注意事项
  • 原文地址:https://www.cnblogs.com/zhaogaojian/p/8440473.html
Copyright © 2020-2023  润新知