WPF - обработка RoutedEvent в родительском объекте для конкретного экземпляра элемента управления
В моем пользовательском контроле у меня есть несколько текстовых полей, например Textbox1, Textbox2.
В родительском я хочу только обрабатывать события KeyDown, вызванные из Textbox1, не все Textbox
Я добавил обработчик в родительском
this.AddHandler(TextBox.KeyDownEvent, new RoutedEventHandler(OnTextboxGoToPageKeyDown));
но, конечно, это будет обрабатывать все события KeyDown, которые я не хочу.
Должен ли я добавить некоторую условную логику в RoutedEventHandler, чтобы проверить, откуда возникло событие?
или есть лучший способ?
Какой лучший способ сделать это?
Благодарю.
1 ответ
Решение
RoutedEventArgs
в вашем OnTextboxGoToPageKeyDown
имеет свойство с именем Source
которые имеют ссылки на объект, который вызвал событие. Вы можете запросить это свойство, когда вам нужно выполнить свою логику.
НТН