2012-01-31 39 views
0

我想知道如果有人知道关于这个问题的一些东西。似乎为ListViewItem提供的默认模板here不支持ListView的DisplayMemberPathListView DisplayMemberPath模板错误?

如预期
<ListView ItemsSource="{Binding SomeSource}" DisplayMemberPath="Name" /> 

将不显示的项目。如果我将GridViewRowPresenter替换为ContentPresenter,它将起作用。因此,我写一个完整工作模板的解决方法是编写一个DisplayMemberPath的DataTrigger与Value="",然后将模板设置为包含GridViewRowPresenter的模板。如果我不会这样做,带有ItemsPresenter的GroupStyle将无法工作。

我的问题:这是一个错误还是我做错了什么?

回答

3

我问过类似的问题here

DisplayMemberPath属性实际上是一个快捷方式,将告诉WPF来创建只不过是TextBlock多个默认项模板与它的文本绑定到任何领域是DisplayMemberPath

如果您除了设置DisplayMemberPath之外还覆盖了项目模板,那么您基本上会覆盖DisplayMemberPath为您创建的模板,这样属性就变得无用了。