Silverlight XAML单选按钮
我有一个绑定到以下问题类的数据网格视图:Silverlight XAML单选按钮,silverlight,xaml,Silverlight,Xaml,我有一个绑定到以下问题类的数据网格视图: public class Questions() { public int QuestionId{get; set;} public string Question {get; set;} public List<Answers> AvailableAnswers {get; Set;} public string SelectedAnswer {get; set;} } public class Answers() { publi
public class Questions()
{
public int QuestionId{get; set;}
public string Question {get; set;}
public List<Answers> AvailableAnswers {get; Set;}
public string SelectedAnswer {get; set;}
}
public class Answers()
{
public int AnswerId {get; set;}
public string Answer {get; set;}
public bool IsSelected {get; set;}
}
我需要的是在我的Datagrid中以单选按钮的形式显示可用答案,以及当用户为AnswerId选择一个单选按钮时,将其设置为Questions类中SelectedAnswer属性
有人能帮我吗?我一直在绕圈尝试做这件事。如果在视图模型中使用MVVM,有几种方法可以做到这一点,您可以创建公共属性,例如
private bool _isAnswer1;
public bool IsAnswer1
{
get { return _isAnswer1; }
set
{
_isAnswer1 = value;
NotifyPropertyChanged(m => m.IsAnswer1); //I used i notify property changed but this is inherited from the base class
}
}
然后在UI中绑定类似
<CheckBox x:Name="testCheckBox" IsChecked="{Binding IsAnswer1} />
假设在视图模型的网格或主视图上设置了数据上下文
然后可以将该属性绑定到UI,选中该属性后,可以为另一个元素调用不同的操作或方法。这取决于你如何实现这一点
如果您不使用mvvm,并且希望在ui中处理此问题,则可以使用elementName绑定。这里基本上是将一个元素的属性绑定到另一个示例的值上,选中复选框并在UI中显示一个值这里是MSDN关于元素名称绑定的链接
也许您需要一个定制的IValueConverter SL标准答案2。请查看相同问题的答案: