Я новичок в конструкторе Visual C #, так что это общий и довольно простой вопрос о том, как работать с дизайнером.
Когда мы, например, добавляем метку к форме, а затем дважды щелкаем по ней в конструкторе Visual C # (я использую Microsoft Visual C # 2008 Express Edition), происходит следующее:
- Дизайнер создает код в Form1.Designer.cs (для простоты предположим имена по умолчанию), чтобы добавить метку,
, затем двойным щелчком добавит обработчик события label1_Click к метке в Form1.Designer.cs , используя следующий код
this.label1.Click + = new System.EventHandler (this.label1_Click);
и добавляет метод-обработчик события к Form1.cs
private void label1_Click(object sender, EventArgs e)
{
}
Если я сейчас удалю метку, будет удален только код в Form1.Designer.cs, но метод label1_Click останется в Form1.cs, даже если он больше не используется. Но если я использую сброс в Properties-> Events для события Click из конструктора, даже метод label1_Click в Form1.cs будет удален.
1.) Разве это не немного противоречивое поведение?
2.) Каков рекомендуемый способ удаления такого сгенерированного кода обработчика событий?
3.) Каков наилучший «ментальный подход» / лучшая практика использования дизайнера?
Я бы подошел к этому с помощью умственного разделения так, чтобы Form1.cs был на 100% моей обязанностью, а с другой стороны, я вообще не касаюсь кода в Form1.Designer.cs. Это имеет смысл или нет? Так как иногда дизайнер удаляет что-н. из Form1.cs Я не уверен в этом.