我正在开发具有许多 winform ui 项目的 Windows 窗体解决方案。
有一个包含一些自定义共享控件的类库项目,名为MyControls
.
现在,当我在 MyControls
中创建控件时
由同一个项目中的一个或多个控件组成,我遇到了问题。
我要么得到编译警告:警告 CS0436:'path-to\MyType.cs' 中的类型'MyType' 与'MyControls.dll' 中的导入类型'MyType' 冲突。使用在“path-to\MyType.cs”中定义的类型。或者我收到一堆不同的编译错误,都指向“MyControls.dll”(错误 CS0234 - “你是否缺少程序集引用?”)。
我要么得到错误,要么得到警告,从来没有两者兼而有之。
如何解决这个问题?
笔记
我加了 visual-studio-2010因为那是我遇到问题的版本。不知道这是否也与其他版本有关。
最佳答案
我发现 Visual Studio 添加了对 MyControls
的自引用当我从 MyControls
中删除控件时在 MyControls
中的另一个控件上的项目:
<Reference Include="MyControls, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL" />
我目前的解决方法是从
MyControls.csproj
中手动删除此引用。使用文本编辑器。完成此操作后,一切正常,直到我删除另一个触发自引用的控件。
更好的解决方案表示赞赏!
关于winforms - 在同一项目中创建由其他用户控件组成的用户控件时出现警告和错误(CS0436、CS0234),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4968845/