Радиокнопки события в wpf - PullRequest
       9

Радиокнопки события в wpf

1 голос
/ 10 августа 2011

Есть две радиокнопки. На каждом я установил обработчики событий для Checked и Unchecked. Когда радио1 проверено и я установил радио2, обработчик событий для снятия флажка radio1 не запускается, а только обработчик событий для проверки радио2. Как я могу запустить их обоих?

1 Ответ

1 голос
/ 10 августа 2011

Эти события отражают только взаимодействие с пользователем. Если вы хотите отловить все изменения, которые вы хотите связать IsChecked на обеих RadioButtons с соответствующими свойствами, вы можете подписаться на событие PropertyChanged, чтобы получить все изменения. (Конечно, вам нужно реализовать INotifyPropertyChanged, в качестве альтернативы вы можете привязать к новым свойствам зависимости, на которых вы можете зарегистрировать обратные вызовы измененных свойств).

Еще проще:

var desc = DependencyPropertyDescriptor.FromProperty(RadioButton.IsCheckedProperty, typeof(RadioButton));
desc.AddValueChanged(_radioButton1, (_,__) =>
    {
        var isChecked = (bool)_radioButton1.IsChecked;
        //...
    });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...