Класс foo может быть разработан, но это не первый класс в файле ошибки - PullRequest
11 голосов
/ 14 января 2012

У меня есть

Можно создать класс foo, но это не первый класс в файле

Ошибка после добавления класса foo, производного от TextBox, в мойC # файл.Как я могу это передать, это очень раздражает.

РЕДАКТИРОВАТЬ:

Я хочу иметь несколько классов в моем файле.Я хочу иметь некоторые классы, производные от TextBox, которые принимают определенные типы ввода.Я не использую конструктор.

EDIT2:

class NumericTextBox : TextBox
{
    protected override void OnTextChanged(EventArgs e)
    {
        ...
    }
}

Ответы [ 5 ]

10 голосов
/ 14 января 2012

В вашем файле должно быть несколько классов.Переместите ваш класс вверх в файл, чтобы он мог быть первым классом в этом файле

Visual Studio требует, чтобы класс, который отвечал за создание файла, был первым или первым классом этого файла

7 голосов
/ 26 ноября 2012

Если вам вообще не нужен конструктор, этот атрибут класса должен помочь:

[System.ComponentModel.DesignerCategory("")]
2 голосов
/ 14 января 2012

Сообщение об ошибке довольно ясно. У вас есть файл .cs, содержащий несколько классов. Переместите каждый класс в отдельный файл, и все будет в порядке.

РЕДАКТИРОВАТЬ: Если вы настаиваете на том, чтобы все классы были в одном файле, поместите класс foo вверху. Порядок имеет значение - по соглашению, дизайнер использует первый класс в файле для элементов управления. Вы не можете иметь несколько классов управления в одном файле, не увидев эту ошибку.

0 голосов
/ 10 ноября 2016

Так же, имя файла должно совпадать с именем класса. Например, файл myClass.designer.cs ожидает класса myClass. Проверьте на наличие опечаток.

0 голосов
/ 17 октября 2013

Либо ваш class.Designer.cs файл, либо ваш class.cs файл будет иметь другой класс, определенный вверху. Так как класс определяется в обоих файлах как класс partial, обязательно проверьте оба файла!

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