Событие пожара, когда кнопка WPF была нажата / не нажата - PullRequest
3 голосов
/ 09 марта 2011

Мне нужно вызвать событие, когда кнопка WPF нажата (мышью, клавиатурой, сенсорным экраном и т. Д.), И вызвать событие, когда кнопки WPF не нажаты.

Как это сделать? Это должно быть легко, но я не могу найти, как это сделать.

Ответы [ 3 ]

5 голосов
/ 09 марта 2011

Вы можете получить из Button и переопределить метод OnIsPressedChanged и запустить там настраиваемое событие.

Или связать со свойством ButtonBase.IsPressed .

1 голос
/ 09 марта 2011

Другой вариант - использовать DependencyPropertyDescriptor:

var descriptor = DependencyPropertyDescriptor.FromProperty(Button.IsPressedProperty, typeof(Button));
descriptor.AddValueChanged(this.button, new EventHandler(IsPressedChanged));
0 голосов
/ 09 марта 2011

Если вы используете MVVM, вы можете использовать триггеры событий для решения вашей проблемы. Таким образом, вы все равно можете отделить ваши требования пользовательского интерфейса от логики приложения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...