Книга: Программирование мобильных устройств на платформе .NET Compact Framework

Листинг 11.3. Запуск обработчика событий при изменении содержимого элемента TextBox программным путем 

Листинг 11.3. Запуск обработчика событий при изменении содержимого элемента TextBox программным путем 

int m_eventTriggerCount;
private void textBox1_TextChanged(object sender, System.EventArgs e) {
 m_eventTriggerCount++;
 //Обновить надпись для отображения количества событий
 label1.Text = "Events: #" + m_eventTriggerCount.ToString();
 //Внести каждое событие в список
 listBox1.Items.Add(m_eventTriggerCount.ToString() + textBox1.Text);
}
private void button1_Click(object sender, System.EventArgs e) {
 //Запускает событие TextChanged так же,
 //как если бы текст был введен пользователем
 textBox1.Text = "Hello World";
}

Как видно из листинга 11.3, программная установка свойства Text элемента управления TextBox запускает тот же код обработки событий, который запускался бы при вводе текста пользователем. В зависимости от того, какие допущения вами сделаны, результаты могут как совпадать, так и не совпадать с ожидаемыми. Программисты часто пишут коды, предназначенные для заполнения пользовательских интерфейсов данными после их извлечения из внешнего источника. При этом устанавливаются свойства Checked переключателей RadioButton и флажков CheckBox, заполняются значения текстовых полей TextBox, заполняются элементами списки ListBox и ComboBox и так далее. Во многих случаях программисты предполагают, что выполнение всех этих установочных действий не приводит к запуску событий пользовательского интерфейса. Обычно в намерения программиста не входит, чтобы эти события запускались, поскольку пользовательский интерфейс всего лишь подготавливается к тому, чтобы пользователь мог им воспользоваться. Очень часто программисты, которые разрабатывают приложение, хотят, чтобы код обработки событий приложения запускался лишь тогда, когда происходит внешнее событие, например, поступает сигнал таймера, пользователь выполняет щелчок на кнопке или вводит текст в элемент управления и тому подобное.

Оглавление книги


Генерация: 1.508. Запросов К БД/Cache: 3 / 1
поделиться
Вверх Вниз