从列表框内容中选择单选按钮
本文关键字:选择 单选按钮 列表 | 更新日期: 2023-09-27 17:55:01
我在列表框内容中放置了一个单选按钮,并将其与QuizOption1
列表绑定绑定工作良好,显示单选按钮检查,如果属性IsSelected
传递为真。类定义如下:
class QuizOption1
{
public int QuizID { get; set; }
public int QuizOptionID { get; set; }
public string Description { get; set; }
public bool IsSelected { get; set; }
}
当检查选中的项目时,我使用以下代码
var lstItems = (List<QuizOption1>)lst.ItemsSource;
var selItems = lstItems.Where(op => op.IsSelected == true).FirstOrDefault();
绑定如下:
<ListBox Name="lst1" Grid.Row="1" >
<ListBox.ItemTemplate >
<DataTemplate >
<RadioButton
Foreground="#333333"
Background="#ffededed"
Tag="{Binding QuizOptionID}"
Content="{Binding Description}"
IsEnabled="True"
GroupName="{Binding QuizID}"
IsChecked="{Binding Path=IsSelected}"/>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
但是selItems总是null。有人能告诉我为什么吗?
答案很简单,我需要在绑定中添加Mode=TwoWay
属性,绑定如下所示。不管怎样谢谢你。
IsChecked="{Binding IsSelected, Mode=TwoWay}"/>