当前位置:  开发笔记 > 编程语言 > 正文

用户控件未显示在工具箱中

如何解决《用户控件未显示在工具箱中》经验,为你挑选了6个好方法。

我有一些我在ProjectA中创建的UserControl.我有一个ProjectB,它有一个我想要控件的窗体.这两个项目都在一个解决方案中.从ProjectB引用了ProjectA,因此它可以"看到"UserControls.

但是,UserControls不会显示在工具箱中,以便我拖动到Windows窗体.

我试过重建.我还删除了'bin'目录以强制重建所有.

如何让VS2008用我的UserControls填充工具箱?



1> Ryan Lundy..:

检查此设置:

工具>选项> Windows窗体设计器>常规:AutoToolboxPopulate

为此,应设置为True.


在VS2010中,默认情况下启用此选项.记得在查看工具箱之前编译项目.如果您尚未编译它,即使启用此选项,它也不会在列表中.
@Corin另外,有一半的时间,即使您启用此选项进行编译,您的控件仍然不会显示在工具箱中.或者它可能会显示一段时间并在以后神秘地消失(并且没有任何重新编译会纠正它).
默认情况下,此选项在VS 2014 CTP中未设置为True ...非常烦人.

2> Don Kirkby..:

    构建您的项目以确保它编译.

    使用您希望用户控制的表单,打开工具箱,右键单击并选择"选择项目"

    浏览到您在步骤1中编译的.exe或dll.

    确保您的用户控件旁边有一个勾号,然后按确定.

    您的用户控件应出现在工具箱中,因此将其拖到表单上.

这是根据Calanus对类似问题的回答改编的.



3> 小智..:

在我的例子中,已经设置了AutoToolboxPopulate(Visual C#2010 Express).

但是,我必须从工具箱的属性(右键单击)激活"全部显示"才能实际看到我的新用户控件.


如果你"显示全部"并且它显示但是显示为灰色(即你不能使用它/添加它),那么检查你的类定义.我只是从一个小部件继承来自定义一些行为,但默认的类定义没有访问修饰符,因此是"私有",所以默认情况下没有显示.让它"公开",它出现了!显而易见,但容易被忽视.

4> 小智..:

到目前为止,我没有在工具箱中显示的用户控件没有问题.构建项目,它只是显示出来.然后今天不工作.经过搜索,我经历了以下但仍然没有快乐.

工具>选项> Windows窗体设计器>常规:AutoToolboxPopulate

工具>选项>文本编辑器> XMAL>其他:AutoToolboxPopulate

将VS设置重置为默认值

因此,经过几个小时的努力试图让它工作没有成功,我创建了一个新的WPF Windows项目接受默认名称并添加了一个usercontrol.构建项目并且用户控件一如既往地出现.

然后我认为我的项目或wpf窗口文件可能有问题.删除了项目,创建了一个新项目并添加了一个新控件.建造了这个项目,但它没有用.

我唯一不同的是为项目选择一个名称,我在名称"WPF Application"中包含了一个空格.

再次删除了项目并再次创建了一个名为"WPFApplication"的新项目,没有空格并添加了用户控件.构建它并且用户控件出现了.

如果您希望在构建时在工具箱中自动显示usercontrol,请不要在项目名称中使用空格.希望这篇文章能为其他人节省大量时间.



5> wlf..:

用户控件可能未显示在工具箱中的另一个原因是它们没有默认构造函数.



6> 小智..:

还要仔细检查您的用户控件是否具有有效的命名空间.

我刚刚发现没有命名空间的控件没有放在ToolBox中.

推荐阅读
无名有名我无名_593
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有