Обработка событий и делегаты
Обработка событий и делегаты
Предыдущие версии Visual Basic убедительно показали, что модель программирования, управляемая событиями и основанная на применении объектов, повышает производительность труда программиста. Стоило вам перетащить элемент на форму, как он начинал реагировать на определенные события. Например, код процедуры события Button1_Click автоматически выполнялся при нажатии кнопки с именем Button1.
Но, несмотря на эффективность, модель, использованная в прежних версиях VB, была недостаточно гибкой. В частности, в ней было трудно определять новые события, а написать обработчик, который обрабатывает сразу несколько событий, было практически невозможно. В VB .NET удобство и эффективность объединились с богатством возможностей. Обычно используется синтаксис, очень близкий к синтаксису прежних версий VB, при этом VB .NET берет на себя всю «черную работу». Если понадобится сделать что-то нестандартное — VB .NET предоставит и такую возможность. Глава начинается с описания модели обработки событий, похожей на аналогичную модель из предыдущих версий VB (хотя и гораздо более мощной). Далее мы представим новую для VB концепцию делегатов и покажем, как с их помощью в полной мере использовать возможности платформы .NET по обработке событий, а также решать более общие задачи (например, организовать обратный вызов функций).