Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/333.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/tfs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 我可以使用同一项目中的UserControl而不创建DLL吗?_C#_.net_Visual Studio_User Controls_Visual Studio 2005 - Fatal编程技术网

C# 我可以使用同一项目中的UserControl而不创建DLL吗?

C# 我可以使用同一项目中的UserControl而不创建DLL吗?,c#,.net,visual-studio,user-controls,visual-studio-2005,C#,.net,Visual Studio,User Controls,Visual Studio 2005,我制作了一个用户控件,并且已经能够通过在C代码中将其添加到表单中来使用它。用户控件与主窗体位于相同的VS2005项目中 问题是,我无法在这个实现的gui编辑器[设计]窗口中看到用户控件。我尝试了很多方法,但无法将用户控件添加到真正的表单设计中 我读了一些关于创建控件库dll的内容,然后将此dll添加到工具箱中,但我不想有额外的项目和额外的二进制文件 如果两个控件位于同一VS项目中,如何在表单设计中使用用户控件?我想这应该是可能的 编辑1: 很抱歉,我使用的是Visual Studio 2005而

我制作了一个用户控件,并且已经能够通过在C代码中将其添加到表单中来使用它。用户控件与主窗体位于相同的VS2005项目中

问题是,我无法在这个实现的gui编辑器[设计]窗口中看到用户控件。我尝试了很多方法,但无法将用户控件添加到真正的表单设计中

我读了一些关于创建控件库dll的内容,然后将此dll添加到工具箱中,但我不想有额外的项目和额外的二进制文件

如果两个控件位于同一VS项目中,如何在表单设计中使用用户控件?我想这应该是可能的

编辑1:


很抱歉,我使用的是Visual Studio 2005而不是2010

您应该能够在Winforms designer中使用自定义用户控件。然而,您必须首先构建您的项目。您可以通过转到Build->Build Solution或按F6来执行此操作。然后您的控件将显示在工具箱中。

是的,在工具箱中,右键单击并选择“选择项…”。。。。然后导航到.NET Framework组件-您的控件应该列在其中。只需选择添加它们。

正如Apshreder已经提到的,该控件应自动显示在工具箱中。如果未检查Visual Studio设置:

工具-选项-Windows窗体设计器-常规-AutoToolboxPopulate-True


有关更多信息,请阅读。

控件应该没有问题,除非在构造函数或加载事件中引发异常。设计器无法正确显示控件。

当用户控件是同一项目的一部分时,当然可以在设计模式下使用它

但是,请注意,只有启用了AutoToolboxPopulate设置,它才会显示在工具箱中。转到“工具”菜单并选择“选项”。展开Windows窗体设计器,然后单击“常规”。确保AutoToolboxPopulate属性设置为True。重建解决方案时,UserControl应该显示在工具箱的顶部,可以添加到表单中

或者,您可以手动将UserControl添加到工具箱中。为此,右键单击工具箱并从关联菜单中选择“选择项”。导航到控件,确保已在列表中选中该控件,然后单击“确定”


在抛出异常(如MacX所述)的情况下,设计器仍会通知您。控件仍将显示在工具箱中,您仍可以尝试将其添加到窗体中。

在VS2010中,创建用户控件并编译后,VS将自动添加组件,并使其在工具栏上的命名空间中可见。
这可以在WPF和旧式代码/组件中完成…

答案是否定的,您不需要将其添加到第二个项目中并将其包含在DLL中。这在VS2005年发生过一次。我的控件类在构建项目后没有出现在工具箱中。问题是。。。我不记得我是怎么解决的。你试过右键单击工具箱并选择“选择项”吗?是的。。。但问题解决了。。。visual studio设置错误。此处未列出hmmm。即使在重新编译之后…不确定,我也有同样的问题,它对我有效…很高兴你得到了排序!