我有几个 RadioButtons 组合在一个组中,因此只能检查一个。RadioButtons 绑定到布尔属性。
这很好用,我的程序会对这些属性的变化做出反应。
假设optA
被选中。接下来我选择optB
, 的值PropertyB
设置为 true ,我的程序会做出相应的反应。但是,此时两者optA
和optB
都为真,直到单选按钮组更新optA
为假,这再次触发我的“IsSelected”事件。
我认为这是完全正确的行为......但是我如何区分来自用户的更改和来自组的自动更改?
编辑:代码
<RadioButton Name="featureCheckBox" GroupName="featureRadioButtonGroup" IsChecked="{Binding Path=IsSelected, Mode=TwoWay}" />
public bool IsSelected {
get{ return _isSelected; }
set { PropertyChanged.ChangeAndNotify(ref _isSelected, value, () => IsSelected); }
}