【发布时间】:2014-04-25 14:16:39
【问题描述】:
我想在 WPF 应用程序中加载一个显示人员详细信息的屏幕。 我正在使用 MVVM 和 C#
我有一个加载个人详细信息的屏幕。 从列表中选择一个人,您按选择并加载该人的信息。 其中的数据是“性别” 在用户控件上,我使用单选按钮。一个是男的,一个是女的。 我想知道如何将结果绑定到单选按钮,以便您选择的人 Joe 显示为男性。
我不想将单选按钮用于显示目的。我只想显示那个人的性别。
是使用单选按钮的 Content 还是 IsSelected 绑定?我知道我应该使用绑定(显然,如果我使用的是 MVVM),但我不知道在哪里。
所以这个人有姓名(字符串)和性别(字符串)。性别字段是男性或女性。如何在 Binding 中使用它来显示选中的单选按钮?
我在 ViewModel 中声明了以下内容:
public bool GenChecked { get; set; }
我猜从那里,我会说,如果 Gender 是 Male,IsSelected Gender 是真的吗?我不清楚。这是我第一次涉足 WPF MVVM 中的单选按钮
如果这个问题不清楚,或者你想看一些代码示例,请评论,我会进行编辑
编辑 1
只是为了清楚。如有任何误解,请见谅。 usercontrol/view 目前有两个单选按钮:
<RadioButton Content="Male" IsChecked="{Binding GenChecked}" />
<RadioButton Content="Female" IsChecked="{Binding GenChecked}" />
视图模型通过一个类获取信息,该类具有名称和性别作为字符串。班级的对象之一是男乔。
所以在我的视图模型上,我有 GenChecked 的布尔值。如果 Joe.Gender = "Male" 则必须选择男性单选按钮。但我认为如果我说 GenChecked 是真的,两者都会被选中?
这就是我困惑的地方。单选按钮必须分组吗?绑定必须相同吗?它必须绑定到内容吗?
希望这能更清楚一些
【问题讨论】:
-
代码一样吗?你有两个不同的男性和女性单选按钮? [更新]你说一个人有性别(字符串),所以那在你的模型中?你的虚拟机有一个布尔值?
-
RadioButton 有一个 IsChecked 属性,您可以将任何布尔值绑定到该属性。但是你的确切问题是什么?
标签: c# wpf data-binding mvvm radio-button