我对编程很陌生,目前正在学习C#和MVVM模式。C#MVVM:将一个RadioButton绑定到一个布尔属性
我需要为大学的ChiliPlants编写一个数据库工具。 在那里你应该可以添加一个新的对象到ObservableCollection。
要向此ObservableCollection添加新项目,将打开一个新窗口。它看起来像这样: Window Add
我现在想要将两个RadioBox绑定到名为“HybridSeed”的属性。这是在视图模型中定义:
//Public Property HybridSeed
public bool HybridSeed
{
get { return ChiliModel.HybridSeed; }
set
{
if (ChiliModel.HybridSeed == value)
return;
ChiliModel.HybridSeed = value;
OnPropertyChanged("HybridSeed");
}
}
的我看来,RadioBox部分看起来是这样的:
<RadioButton Grid.Row="5" Content="Ja" Grid.Column="1" HorizontalAlignment="Left" Margin="10,10,0,0" VerticalAlignment="Top"/>
<RadioButton Grid.Row="5" Content="Nein" Grid.Column="1" HorizontalAlignment="Left" Margin="89,10,0,0" VerticalAlignment="Top"/>
但是如何在这些单选按钮,用户点击的结果绑定到这个HybridSeed房产吗?重要的是,结果是一个布尔。
我抬头几乎每一个类似于这个主题的条目,但我没有找到一个简单的解决方案。或者我可以用我的不好的编码技巧,了解:(一解...
我会非常高兴,如果你们能帮助我。请保持简单这个新手:)
如果有是一个使用CheckBox或ComboBox的更简单的解决方案,它也是完美的。最重要的是有一个很好的用户界面。现在它只能用于TextBox,用户必须始终写入“True”或“False”。
解决方案:
我加入了IsClicked属性的 “Yes” 单选按钮绑定到我的boulean属性:IsClicked = “{结合HybridSeed}”。感谢naslund为他的快速答案:)
太好了!感谢您的快速和简单的答案:)现在我知道,我的问题是有点愚蠢,但没有人出生的编码天才对吗? :) – ccdreyer
不,这是一个很好的问题。当我开始使用MVVM时,我经常忘记你可以将值绑定到基本上任何属性,但是当你掌握它的时候它是非常强大的。 – naslund