我使用一个布尔属性来设置两个单选按钮IsChecked属性 这是我的xaml代码
<RadioButton GroupName="Group1" Content="Radio1" IsChecked="{Binding BooleanProperty}"/>
<RadioButton GroupName="Group1" Content="Radio2" IsChecked="{Binding BooleanProperty,Converter={StaticResource BooleanNotConverter}}"/>
上面的代码在我主窗口的子视图中。第一次加载子视图时,单选按钮工作正常。 第二次加载子视图时,viewmodel的BooleanProperty setter名为unexpectedly.i,我没有从任何地方设置属性值。
这是我的视图模型属性
public bool BooleanProperty
{
get;
set;
}
请帮助我找出我做错了什么..
答案 0 :(得分:0)
可以通过避免使用groupName来解决此问题。如果我们在处理视图时使用groupName,则会自动设置单选按钮属性的有界属性
<RadioButton Name="radio1" Content="Radio1" IsChecked="{Binding BooleanProperty}"/>
<RadioButton Content="Radio2" IsChecked="{Binding IsChecked,ElementName= radio1,Converter={StaticResource BooleanNotConverter}}"/>