Я предлагаю вам:
- в конструкторе форм Windows, щелкните древовидное представление, чтобы выбрать его
- в сетке свойств щелкните значок молнии и прокрутите, чтобы найти событие AfterSelect
- щелкните правой кнопкой мыши имя AfterSelect и выберите сброс
- хит сохранить все
- Полностью закрыться / закрыть визуальную студию
- перезапустить / перезагрузить решение
Вернитесь к событию AfterSelect, как указано выше, поле для которого должно быть пустым
- щелкните раскрывающийся список и выберите существующий обработчик событий
- сохранить все, выйти и перезапустить против и проверить, что настройки остались
Если вы обнаружите, что он не прилипает, убедитесь, что у вас нет дизайнера, открытого в другой программе, например Текстовый редактор, который автоматически сохраняет старую версию файла, в которой отсутствует обработчик событий?
Кстати, описанный выше процесс заключается в том, как добавить событие в представление «Дизайн» - щелкните соответствующий элемент управления, значок молнии, выделите требуемое событие, дважды щелкните имя события, и вы перенесетесь в свой собственный код с новым именованный обработчик событий создан и готов к заполнению
Если вы не напишите в нем никакого кода, вернетесь к конструктору и сбросите событие в соответствии с инструкциями маркированного списка, тогда ваш метод обработчика событий в вашем коде исчезнет. Если вы пишете код в обработчик событий, он не удаляется при выполнении сброса, во время сброса удаляются только пустые методы обработчика
Примечание: будьте осторожны с Undo, если вы видите сообщение о том, что «выполнение этой отмены приведет к потере работы в другом месте», это обычно означает, что дизайн формы Windows или код designer.cs будут изменены в результате действий отмена
Файлы конструктора безопасны для редактирования вручную, и иногда это необходимо, если содержимое попало в состояние, при котором происходит сбой конструктора. Я чаще всего сталкиваюсь с этим при удалении обработчиков событий из моего кода, на которые все еще есть ссылки в конструкторе. Появится экран с сообщением о том, что проблема не позволяет появиться конструктору форм, с указанием строки ошибки в файле конструктора. Кроме того, в прошлом я редактировал конструктор напрямую, чтобы установить большое количество свойств без необходимости использовать конструктор - будьте осторожны, чтобы не открывать конструктор форм Windows одновременно с редактированием файла designer.ca, потому что конструктор форм будет вероятно, перезаписать ваши изменения. До тех пор, пока вы помните, что открытие одного и того же файла в любых двух разных редакторах одновременно может привести к конфликту и потере работы, и примите меры для обеспечения того, чтобы изменения в одном редакторе отражались в другом, прежде чем продолжить дальнейшие изменения в с другим редактором у вас все будет в порядке:)
Редактировать: сказав этот абзац выше, Микки Ди заставил меня осознать важный момент, который я упустил:
Файл designer.cs читается конструктором форм и используется для создания содержимого формы, кнопок, свойств и т. Д. Таким образом, если вы собираетесь редактировать designer.cs в текстовом редакторе, вам следует ограничить свои правки. только те вещи, которые дизайнер форм может использовать, понимать, представлять и сохранять при следующей записи файла. Добавление строки для установки кнопки в активном порядке. Удаление строки, которая вызывает ее сбой, также хорошо. Помещение 27 методов, реализующих стратегию доступа к базе данных всей вашей программы, не является хорошей идеей, поскольку к ней не будут обращать внимание или использовать их для построения формы, когда дизайнер читает файл, и, следовательно, теряются, когда дизайнер пишет файл. Если вы не уверены в разнице между тем, что будет и не будет сохранено, используйте удаление или исправление только существующих строк вместо добавления новых строк кода