Поделиться через


RoutedEventHandler Делегат

Определение

Представляет метод, который будет обрабатывать различные перенаправленные события, не содержащие данных события, помимо тех, которые являются общими для всех перенаправленных событий.

public delegate void RoutedEventHandler(System::Object ^ sender, RoutedEventArgs ^ e);
public delegate void RoutedEventHandler(object sender, RoutedEventArgs e);
type RoutedEventHandler = delegate of obj * RoutedEventArgs -> unit
Public Delegate Sub RoutedEventHandler(sender As Object, e As RoutedEventArgs)

Параметры

sender
Object

Объект, к которому присоединен обработчик событий.

e
RoutedEventArgs

Данные события.

Комментарии

Делегат RoutedEventHandler используется для любого перенаправленного события, которое не сообщает сведения о конкретном событии в данных события. Существует множество таких перенаправленных событий; Известные примеры: Click и Loaded.

Наиболее примечательное различие между написанием обработчика для перенаправленного события в отличие от общего события CLR заключается в sender том, что событие события (элемент, к которому прикреплен и вызывается обработчик) не может считаться источником события. Источник передается как свойство в данных события (Source). Разница между sender и Source является результатом перенаправления события в различные элементы во время обхода перенаправленного события через дерево элементов.

Вы можете использовать или senderSource для ссылки на объект, если вы намеренно не заинтересованы в поведении маршрутизации прямого или восходящего перенаправленного события и планируете обрабатывать перенаправленные события только в элементах, где они впервые возникают. В этом случае и senderSource являются тем же объектом.

Если вы намерены использовать преимущества, присущие перенаправленным событиям, и записывать обработчики соответствующим образом, два наиболее важных свойства данных событий, с которыми вы будете работать при написании обработчиков событий, — это Source и Handled.

Для определенных сочетаний входных событий и классов элементов управления WPF элемент, вызывающий событие, не является первым элементом, который имеет возможность его обработки. Если событие ввода имеет предварительную версию события, то корень дерева элементов имеет первую возможность, может задать для true значение Handled в общих данных события и может повлиять на то, как входное событие передается оставшимся элементам в маршруте события. Поведение обработки предварительного просмотра может привести к тому, что определенное перенаправленное событие не вызывается должным образом. Дополнительные сведения см. в разделе Обзор событий предварительного просмотра и ввода.

Методы расширения

GetMethodInfo(Delegate)

Получает объект, представляющий метод, представленный указанным делегатом.

Применяется к