• 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

     

  • 相关阅读:
    IPC总结学习
    机器学习中的范数规则
    机器学习的几个误区-转载
    来几道大数据的面试题吧
    海量数据随机抽样问题(蓄水池问题)
    字符串类算法题目总结
    RPC学习
    如何做出健壮的系统设计
    关于bind函数和connect函数的测试结论
    [置顶] Codeforces Round #197 (Div. 2)(完全)
  • 原文地址:https://www.cnblogs.com/luqingfei/p/15676418.html
Copyright © 2020-2023  润新知