Wpf中的Radiobuttons事件

时间:2011-08-09 21:50:03

标签: wpf events radio-button

有两个radiobuttons。在每个我已经设置了Checked和Unchecked的事件处理程序。当选中radio1并且我设置了radio2时,uncheck radio1的事件处理程序不运行,只检查radio2的事件处理程序。我怎么能同时运行它们?

1 个答案:

答案 0 :(得分:1)

这些事件仅反映用户交互,如果要捕获可能要将两个RadioButtons上的IsChecked绑定到相应属性的所有更改,则可以订阅PropertyChanged事件以获取所有更改。 (您当然需要实现INotifyPropertyChanged,或者您可以绑定到可以注册属性更改回调的新的dependnecy属性。)

更容易:

var desc = DependencyPropertyDescriptor.FromProperty(RadioButton.IsCheckedProperty, typeof(RadioButton));
desc.AddValueChanged(_radioButton1, (_,__) =>
    {
        var isChecked = (bool)_radioButton1.IsChecked;
        //...
    });