我想在類別(分組)下列出玩家姓名。所以我使用了ListView。我有一個 ViewModel 類,它具有 PlayerData 的 Observable Collection ,我將此 observableCollection 設定為 CollectionViewSource 。當我嘗試將 CollectionViewSource 設定為 ListView ItemSource 時,它??會引發錯誤!
我的完整源代碼:->專案鏈接
我還想自定義 ListView GroupHeaderTemplate 。怎么做?
uj5u.com熱心網友回復:
您應該將 CollectionViewSource視圖屬性分配給 ListView ItemsSource。請嘗試以下
listView.ItemsSource = collectionViewSource.View;
還有一件事,您沒有指定 listview GroupStyle 請參考以下 xaml 代碼
<ListView.GroupStyle>
<GroupStyle>
<GroupStyle.HeaderTemplate>
<DataTemplate x:DataType="local:ListViewGroup">
<Border>
<TextBlock Style="{ThemeResource TitleTextBlockStyle}" Text="{x:Bind HeaderText}" />
</Border>
</DataTemplate>
</GroupStyle.HeaderTemplate>
</GroupStyle>
</ListView.GroupStyle>
更新
<GroupStyle x:Key="groupStyle">
<GroupStyle.HeaderTemplate>
<DataTemplate x:DataType="local:ListViewGroup">
<Border>
<TextBlock Style="{ThemeResource TitleTextBlockStyle}" Text="{x:Bind HeaderText}" />
</Border>
</DataTemplate>
</GroupStyle.HeaderTemplate>
</GroupStyle>
將上述樣式插入 GroupStyle
listView.GroupStyle.Add((GroupStyle)this.Resources["groupStyle"]);
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/489034.html