gpt4 book ai didi

c# - 如何将VM中的可为空的 bool 值绑定(bind)到RadioButton

转载 作者:行者123 更新时间:2023-12-04 04:59:18 26 4
gpt4 key购买 nike

我正在努力解决这个问题?在我的虚拟机中,我有一个 nullable bool我想绑定(bind)到 Yes/No(true/false) RadRadioButton 的属性.有人可以指出我正确的方向吗?

虚拟机

public bool? IsSDS { get; set; }

看法
<telerik:Label Content="Self Directed Support" />
<StackPanel Orientation="Horizontal">
<telerik:RadRadioButton x:Name="SelfDirectedSupportYes" Content="Yes" />
<telerik:RadRadioButton x:Name="SelfDirectedSupportNo" Content="No" />
</StackPanel>

编辑

我认为这是有效的,但我错了。只有 Yes 具有约束力。以下是我的观点, CreateAuthView :
<StackPanel Orientation="Horizontal" Margin="3" Grid.Column="1" Grid.Row="2">
<telerik:RadRadioButton x:Name="Authorization_SelfDirectedSupportYes" GroupName="SDS" Content="Yes" />
<telerik:RadRadioButton x:Name="Authorization_SelfDirectedSupportNo" GroupName="SDS" Content="No" />
</StackPanel>

这是我的 ViewModel 上的相应部分, CreateAuthViewModel :
public Authorization Authorization
{
get
{
return this.authorization;
}
set
{
if (authorization != value)
{
this.authorization = value;
NotifyOfPropertyChange(() => Authorization);
}
}
}

最后是我模型上的属性, Authorization :
public bool? SelfDirectedSupportYes
{
get
{
return this.selfDirectedIndicator;
}
set
{
this.selfDirectedIndicator = value;
this.OnPropertyChanged();
}
}

最佳答案

IsChecked也是 Nullable<bool> 类型,因此您可以直接将其绑定(bind)到"is"单选按钮。如果你设置相同的GroupName对于两个单选按钮,您根本不需要绑定(bind)“否”单选按钮(因为选中“否”将取消选中"is")

<telerik:Label Content="Self Directed Support" />
<StackPanel Orientation="Horizontal">
<telerik:RadRadioButton x:Name="SelfDirectedSupportYes" GroupName="SelfDirectedSupportOption" Content="Yes" IsChecked="{Binding IsSDS}" />
<telerik:RadRadioButton x:Name="SelfDirectedSupportNo" GroupName="SelfDirectedSupportOption" Content="No" />
</StackPanel>

关于c# - 如何将VM中的可为空的 bool 值绑定(bind)到RadioButton,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16346443/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com