我已经将一些类复制粘贴到这个项目中,其中一些来自其他项目。在某些时候,VS已将Class1
标记为一个组件(您可以从上面屏幕截图中显示的图标中看到)。 Class2
没问题。 文件属性没有区别,Class1
和Class2
之间的代码没有区别(*除了下面的编辑)
它不会阻止代码编译或运行。它实际上是一个问题吗? 不方便,如果双击文件,IDE会尝试打开“设计”窗口。
这是怎么发生的,以及如何解决?
编辑:实际上,代码窗口存在一些有趣的差异。至少,必须有,因为删除大量代码会导致解决方案资源管理器将文件还原为 Class 文件。恢复块,文件将恢复为组件。目前......调查。
答案 0 :(得分:12)
我不确定为什么会这样做,但我知道如何摆脱它。在你上课之前:
[System.ComponentModel.DesignerCategory("Code")]
它应该有用。
答案 1 :(得分:3)
对于问题的“为什么”部分(取自this post似乎是重复的):
在继承路径上使用System.ComponentModel.Component的类 在Visual Studio(2008)中自动被视为“组件”,触发源文件的不同图标: