ListBox.ItemsSource 的显示属性
Posted
技术标签:
【中文标题】ListBox.ItemsSource 的显示属性【英文标题】:Display properties of the ListBox.ItemsSource 【发布时间】:2010-12-12 03:55:09 【问题描述】:我是 WPF 新手。我有一个 ListBox,它的 ItemSource 设置为 WorkItemCollection 的实例。 (WorkItem 对象的集合。)
显示列表时,它仅显示每个对象的类型 (Microsoft.TeamFoundation.WorkItemTracking.Client.WorkItem)。有没有办法让列表显示 WorkItem.Title?
【问题讨论】:
感谢您的回答。我会在我正在做的应用程序中使用这两种方法! 【参考方案1】:你有两个选择。
最简单的方法是将ListBox的DisplayMemberPath属性设置为“Title”。
如果您不仅要设置显示的内容,还要设置用于显示它的控件类型,那么您可以设置 ListBox 的 ItemTemplate。
对于您的目标,我会推荐第一个选项。
【讨论】:
【参考方案2】:您可以在ListBox
的ItemTemplate
属性上设置DataTemplate
:
<ListBox ItemSource="Binding">
<ListBox.ItemTemplate>
<DataTemplate DataType="tfs:WorkItem">
<StackPanel>
<TextBlock Text="Binding Title" />
<!-- Others -->
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
【讨论】:
这是一种非常复杂的方式来完成 DisplayMemberPath 在一行中所做的事情。 @Ray 同意,只有在设置更复杂的 UI 时才使用它。以上是关于ListBox.ItemsSource 的显示属性的主要内容,如果未能解决你的问题,请参考以下文章
将 UserControl ListBox ItemSsource 绑定到父 DataContext 时出错
请问EPLAN的标题页的项目属性信息不能显示是为啥?请问怎么重新显示项目属性的信息?