2014-01-08 4 views
7

Я действительно не ознакомлен с C#, и мне жаль, если это непросто, но это поможет мне лучше понять мою домашнюю работу.Разница между form1.cs, form1.designer.cs и program.cs в C#

Мне нужно сделать какое-то приложение C# в Visual Studio, и мой главный вопрос: какая часть кода находится в каком файле: form1.cs, form1.designer.cs или program.cs?

Я думаю, что Visual Studio генерирует код в Form1.designer.cs и что я не должен его изменять, если это не является необходимым, в form1.cs есть функция, которая активируется щелчком по элементу формы и в программе. cs является основным приложением.

Я прав, и есть ли что-нибудь еще, что я должен знать об этих файлах в начале?

Большое спасибо за ваши ответы.

+1

Добро пожаловать в C#, хорошим стартовым местом будет http://msdn.microsoft.com/en-us/library/ms173077 (v = vs.90) .aspx «Что в вашем проекте?» раздел отвечает на ваш вопрос. Вы также можете прочитать «обработчики событий», определения которых обычно находятся в form1.cs. – Dan

+0

благодарю вас за ответ :) – user3100193

ответ

3

Да вы в основном правильно, однако:

  1. Form1.cs является файл кода формы окна. Это файл класса окна , где записываются необходимые методы, функции и методы и коды, управляемые событиями.

  2. form1.designer.cs - это файл конструктора, в котором элементы формы инициализируются. Если какой-либо элемент перетаскивается и отбрасывается в окне формы, тогда этот элемент будет автоматически инициализирован в этом классе.

  3. program.cs является основным приложением. Это будет выполнено сначала при запуске приложения.

+0

Я работаю со старым кодом, где form1.designer.cs не существует, и он помещает все в form1.cs. Если я опустил новую кнопку, она обновит InitializeComponent() в form1.cs. Какая настройка должна вести себя таким образом? –

2

Ну

  • Form1.cs: Это ваш код, события и пользовательский код вы пишете здесь.

  • form1.designer.cs: Код для компонентов на окнах. Вам это нужно, и вы не можете удалить. Не рекомендуется менять его вручную для начинающих.

  • Program.cs: В C#, для начала программы он выглядит для статического класса, который содержит статический метод main(string[] args) и начать выполнение программы в этой области. Здесь, в приложении Windows Forms, код создает форму и открывает ее для запуска пользователем приложения.

Everytime вы создаете форму, вы увидите, у вас есть .cs файл и .designer.cs и каждый раз, когда вы перетащите элемент управления из панели инструментов или изменить некоторые свойства на окне свойств файла .designer.cs будет изменен.

+0

спасибо за ваш ответ :) – user3100193

0

program.cs - это статический класс, который содержит только один статический метод, который нужен для запуска приложения.From MSDN:

Каждый C# приложение должно содержать один основной метод, определяющий , где выполнение программы начнется.

Если ваш проект просто библиотека, то вам не нужно Main() - метод в вашем коде, и program.cs не будет генерироваться

О form1.cs и form1.designer.cs - это один класс form1 который определение разбиваются на два файла кода. From MSDN about partial class:

можно разделить определение класса или структуры, интерфейса или метода в течение двух или более исходных файлов. Каждый исходный файл содержит раздел определения типа или метода, а все части - вместе при компиляции приложения.

Итак, у этого двух файлов есть код того же класса.
Вы можете написать код инициализации элемента управления в своем form1.cs. Но нужно помнить, что файл form1.designer.cs будет генерироваться всегда, когда вы внесли изменения через конструктора VisualStudio

+0

спасибо за ваш ответ :) – user3100193

Смежные вопросы