我正在使用许多Winform ui项目开发Windows窗体解决方案。
有一个类库项目,其中包含一些名为MyControls的自定义共享控件。

现在,当我在MyControls中创建控件时
由同一项目中的一个或多个控件组成,我遇到了问题。

我要么得到编译警告:警告CS0436:“ path-to \ MyType.cs”中的“ MyType”类型与“ MyControls.dll”中的导入类型“ MyType”冲突。使用在“ path-to \ MyType.cs”中定义的类型。或者我遇到了许多不同的编译错误,都指向“ MyControls.dll”(错误CS0234-“您是否缺少程序集引用?”)。

我得到了错误或警告,但从未同时出现。

如何解决呢?

注意

我添加了visual-studio-2010,因为这是我遇到问题的版本。不知道这是否也与其他版本有关。

最佳答案

我发现当我从MyControls项目中的某个控件放到MyControls中另一个控件上时,Visual Studio向MyControls添加了一个自引用:

<Reference Include="MyControls, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL" />


我当前的解决方法是使用文本编辑器从MyControls.csproj手动删除此引用。
完成此操作后,一切正常,直到放下另一个触发自我引用的控件为止。

更好的解决方案表示赞赏!

10-08 02:16