Книга: Программирование мобильных устройств на платформе .NET Compact Framework
Листинг 13.2. Динамическое создание элементов управления на форме во время выполнения
Листинг 13.2. Динамическое создание элементов управления на форме во время выполнения
//-------------------------------------
//Счетчик количества создаваемых кнопок
//-------------------------------------
private int m_nextNewButtonIndex;
//---------------------------------------------------------------
//ОБРАБОТЧИК СОБЫТИЙ: Обработчик щелчка на кнопке, которая
// имеется на нашей форме.
//
//Эта функция создает новую кнопку, присоединяет ее к нашей форме
//и подключает обработчик события щелчка для нее
//---------------------------------------------------------------
private void buttonCreateNewButtons_Click(object sender, System.EventArgs e) {
//Впоследствии мы начнем создавать новые кнопки, начиная
//снизу экрана, поэтому ограничиваем их количество восемью
if (m_nextNewButtonIndex > 8) {
return;
}
//----------------------------------------------------
//Создать кнопку (еще не присоединенную к нашей форме)
//установить ее местоположение, размеры и текст
//----------------------------------------------------
const int newButtonHeight = 15;
System.Windows.Forms.Button newButton;
newButton = new System.Windows.Forms.Button();
newButton.Width = 100;
newButton.Height = newButtonHeight;
newButton.Left = 2;
newButton.Top = (newButtonHeight + 2) * m_nextNewButtonIndex;
newButton.Text = "New Button " + m_nextNewButtonIndex.ToString();
//--------------------------------------------------
//Присоединить обработчик к событию щелчка на данном
//элементе управления.
//--------------------------------------------------
newButton.Click += new System.EventHandler(this.ClickHandlerForButtons);
//-----------------------------------------
//Присоединить эту кнопку к форме. По сути,
//это создаст кнопку на форме!
//-----------------------------------------
newButton.Parent = this;
//Увеличить счетчик в соответствии с созданием очередной кнопки
m_nextNewButtonIndex++;
}
//-----------------------------------------------------
//Обработчик событий, который мы динамически подключаем
//к нашим новым кнопкам
//-----------------------------------------------------
private void ClickHandlerForButtons(object sender, System.EventArgs e) {
Button buttonCausingEvent;
buttonCausingEvent = (System.Windows.Forms.Button)sender;
//Вызвать окно сообщений, извещающее о том,
//что мы получили событие
System.Windows.Forms.MessageBox.Show("Click event from: nr'" + buttonCausingEvent.Text + "'");
}
- Листинг 13.2. Динамическое создание элементов управления на форме во время выполнения
- Динамическое создание элементов управления
- Права для выполнения резервного копирования
- Листинг 10.1. (simpleid.c) Отображение идентификаторов пользователя и группы
- Основные "рычаги" управления производительностью
- Создание файлов с блокировкой
- Категорийный менеджмент. Курс управления ассортиментом в рознице
- Создание свободно позиционируемых элементов
- Улучшенное время отклика для версии SuperServer
- Упражнения для самостоятельного выполнения
- Часы в Windows показывают неправильное время
- 12. Лекция: Создание приложений с графическим интерфейсом пользователя.