根据列表框所选项目设置Label对象
本文关键字:项目 设置 Label 对象 选项 列表 | 更新日期: 2023-09-27 18:28:19
我需要将一个Label
绑定到两个ListBox
。为了做到这一点,我将两个ListBox
的SelectionChanged
属性设置为相同的函数:
<ListBox Name="ListBox1" SelectionChanged="UpdateSelectedItem" />
<ListBox Name="ListBox2" SelectionChanged="UpdateSelectedItem" />
<Label Name="DetailsLabel" DataContent="DefinedElsewhere" />
然而,我很难找到所选项目的实际内容。我已经查看了发送对象和SelectionChangedEventArgs的所有属性,但找不到它。ListBox
绑定到对象的ObservableCollection
,我希望Label
显示上一个所选项目(无论它是从哪个ListBox
中选择的)的属性。我怎么找到它?
private void UpdateSelectedItem(object sender, SelectionChangedEventArgs e)
{
DetailsLabel.Content = ???;
}
您可以通过以下操作读取所选项目文本:
ListBoxItem item = ((ListBox)sender).SelectedItem as ListBoxItem;
String itemText = (item != null) ? item.Content.ToString() : String.Empty;
您必须将SelectedItem属性强制转换为列表中的对象类型。在这个例子中,我使用了ListBoxItem。