2012-01-31 30 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爲您創建的模板,這樣屬性就變得無用了。