zoukankan      html  css  js  c++  java
  • Windows窗体控件库的小秘密

     

     最近在维护前人留下的项目中,发现有些WinForm项目可以以类库输出的形式,调试期间直接运行,以前从来没有注意到,感觉挺神奇。

    今天创建了上面截图中的两个项目,进行了比较,表面上看着一模一样,好不容易才发现其中的隐藏的很深的一行信息。如下:

    <Service Include="{94E38DFF-614B-4cbd-B67C-F211BB35CE8B}" />

    在项目文件csproj文件里的ItemGroup配置节点下。

    把这一行,移植到普通winform可执行项目中去,终于起效果了。

    太好了,手里还有数百个类似的项目,我都可以统一根据需要切换一下了。

    百度了一下,已经有人10年前就发现了。下面是转载另一位网友的发现:

    可能大家并不知道,同样是类库,如标准类库,控件类库,调试时截然不同,如果你创建工程的时候选择是控件类库,那调试时会自动启动一个控件容器测试工具,给你测试使用,但标准类库里如果有控件,直接调试时,会报没有启动项目,无法调试的信息,这两种类库有什么区别呢,表面上看什么都没有,其实编译后也是一样的,究其根源,在于新建项目时的选择,那么答案就很简单了,秘密在项目文件里,经过对比,发现控件类库的项目文件多了
    <Service Include="{94E38DFF-614B-4cbd-B67C-F211BB35CE8B}" />
    标准类库的项目文件里只要补上这么一句,就可以直接测试控件了

    恩,又补充发现了个问题,不是所有控件都能测试的,只有继承于UserControl的才可以

    作者:Superlight
    ————————————————
    版权声明:本文为CSDN博主「superlight」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/superlight/article/details/4190377

     

  • 相关阅读:
    一个在LINUX里安装MS LIB的工具
    Debian 5网易更新源
    ZT:apache转发实现iis和apache共享80端口
    SuSE 安装 永中Office
    [ZT]用dd备份主引导记录
    opensuse 11.3使用fcitx的办法
    在debian5上安装vmware server 2.0.2的尝试
    VHCS wait to be added问题解决
    debian里的NAT转发设置
    Linux操作系统下安装USB移动硬盘的方法
  • 原文地址:https://www.cnblogs.com/luqingfei/p/15676418.html
Copyright © 2011-2022 走看看