Объявление события public delegate void SampleEventDelegate(object Sender, string e); public event SampleEventDelegate SampleEvent; public void CallEvent(string EventParam) { if (SampleEvent != null) SampleEvent(this, EventParam); }
Обработка события MyClass m = new MyClass(); m.SampleEvent += new MyClass.SampleEventDelegate(m_SampleEven t); public void m_SampleEvent(object Sender, string e) { Console.WriteLine(e); }
Иерархия классов System.Object System.MarshalByRefObject System.Windows.Forms.Control System.ComponentModel.Component System.Windows.Forms.ButtonBaseSystem.Windows.Forms.ScrollableControl System.Windows.Forms.Form System.Windows.Forms.Button
Открытие окна Form2 frm = new Form2(); frm.Show(); Form2 frm = new Form2(); DialogResult res = frm.ShowDialog();
Добавление элемента управления Button btn = new Button(); btn.Left = 100; btn.Top = Index++ * 30; btn.Width = 200; btn.Click += new EventHandler(MyButtons_click); btn.Text = "Новая кнопка " + Index.ToString(); this.Controls.Add(btn);
Основные события управляющих элементов MouseDown MouseUp MouseClick MouseMove MouseEnter MouseHover MouseLeave KeyDown KeyUp KeyPress KeyPreview
Основные свойства управляющих элементов Left Top Width Height Location Size Dock Anchor Text Enabled Visible Modifiers
DesignTime/Runtime Дизайнер студии Создание элементов в рантайме Типичный вид обработчика событий Расположение редактора свойств в IDE
Моменты исполнения DesignTime – процесс разработки RunTime – время выполнения
Стандартные диалоги
Открытие файла OpenFileDialog dlg = new OpenFileDialog(); dlg.Filter = "*.txt|текстовые файлы"; DialogResult res = dlg.ShowDialog(); if (res == DialogResult.OK) MessageBox.Show("Выбран " + dlg.FileName);
Создание своего элемента управления Добавить элемент проекта. В дизайнере выбрать UserControl Появится класс, наследованный от System.Windows.Forms.UserControl Разработать как обычную форму Добавить интерфейс для взаимодействия
Полезные статьи