Почему Visual Studio пометил мой класс как компонент? - PullRequest
7 голосов
/ 18 января 2011

A class diagram

Я скопировал несколько классов в этот проект, некоторые из других проектов. В какой-то момент VS пометил Class1 как компонент (вы можете видеть по значку, показанному на скриншоте выше). Class2 в порядке. Нет никакой разницы в Свойствах файла и нет интересной разницы в коде между Class1 и Class2 (* кроме случаев, когда edit ниже)

Не останавливает компиляцию или запуск кода. Это на самом деле проблема вообще? неудобно из-за того, что IDE пытается открыть окно «Дизайн», если дважды щелкнуть файл.

Как это происходит и как это исправить?

Редактировать: На самом деле, в окне кода есть интересные различия. По крайней мере, так должно быть, поскольку удаление большого фрагмента кода приводит к тому, что Solution Explorer возвращает файл в файл Class . Восстановите чанк, и файл снова станет компонентом . В настоящее время ... расследование.

Ответы [ 2 ]

12 голосов
/ 18 января 2011

Я не уверен, почему это происходит, но я знаю, как от этого избавиться.Перед вашим занятием положите:

[System.ComponentModel.DesignerCategory("Code")]

Это должно сработать.

3 голосов
/ 20 февраля 2013

Для части «почему» вашего вопроса (взято из этого поста , который выглядит дубликатом):

Класс с System.ComponentModel.Component на пути их наследования автоматически обрабатываются как «компоненты» в Visual Studio (2008), вызывая другой значок для исходного файла:

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...