Код Windows Forms генерируемый конструктором

но когда вы перешли в

В предыдущем разделе я упомянул, что все ваши интерактивные действия в конструкторе были в действительности автоматической генерацией кода. Но когда вы перешли в вид Code для файла Forml. cs, то не увидели там почти ничего, кроме конструктора формы, вызывающего некоторый метод с именем InitializeComponent, и метода обработчика события, который вы создали при посредстве окна Properties. Так куда же девается весь тот код, который объявляет переменные для элементов управления, устанавливает их свойства, подключает обработчик события и т. д.? Ответ на этот вопрос связан с одной из новых и улучшенных особенностей Visual Studio 2005. В предыдущих версиях Visual Studio код, генерируемый конструктором, встраивался в регион внутри самого файла кода формы. Возникающая при этом проблема носила двоякий характер. Во-первых, этот код часто удаляли по ошибке, уничтожая тем самым форму. Во-вторых, генерируемый конструктором код никогда, вообще говоря, не должен модифицироваться вручную, потому что любые внесенные вами изменения могут быть переписаны конструктором, когда вы будете в следующий раз делать изменения из вида Design. Встраивание этого кода в основной исходный файл вызывало слишком большое искушение залезть в него и сделать какие-то изменения, что приводило к пропаже кода и замешательству новичков. Новой особенностью языка в. NET 2.0 является возможность объявлять неполные классы. Это позволяет вам распределить определение одного класса по нескольким исходным файлам. Visual Studio 2005 применяет эту возможность для выделения кода, генерируемого конструктором, в отдельный исходный файл, который в дереве Solution Explorer располагается в проекте как вложенный в главный исходный файл формы. Если вы хотите посмотреть содержимое этого файла, разверните дерево в окне Solution Explorer, щелкнув на значке плюса рядом с Forml. cs. Под Forml. cs вы увидите файл Forml. Designer. cs. Если вы откроете этот файл, то найдете там генерированный конструктором код во всей его красе.