2017-08-31 9 views
1

複数のアイテムを表示するためにリストボックスを使用しています。 項目はグループ化されています。今私はヘッダースタイルを編集したいが、唯一のことは、テキストがもう表示されないということです。私のXAMLザッツC#WPFリストボックスグループヘッダースタイル

<ListBox x:Name="lbTreatments" HorizontalAlignment="Left" Height="473" Margin="10,37,0,0" VerticalAlignment="Top" Width="309" FontSize="13"> 
        <ListBox.GroupStyle> 
         <GroupStyle> 
          <GroupStyle.HeaderTemplate> 
           <DataTemplate> 
            <TextBlock Text="{Binding subcategoryName}" FontWeight="Bold"/> 
           </DataTemplate> 
          </GroupStyle.HeaderTemplate> 
         </GroupStyle> 
        </ListBox.GroupStyle> 
        <ListBox.ItemTemplate> 
         <DataTemplate> 
          <TextBlock Text="{Binding name}"/> 
         </DataTemplate> 
        </ListBox.ItemTemplate> 
       </ListBox> 

、グループに私のコードのthatsアイテム:

ICollectionView view = CollectionViewSource.GetDefaultView(treatmentsCategory); 
      view.GroupDescriptions.Add(new PropertyGroupDescription("subcategoryName")); 
      view.SortDescriptions.Add(new SortDescription("subcategoryName", ListSortDirection.Ascending)); 
      lbTreatments.ItemsSource = view; 

項目がグループ化されていますが、ヘッダーテキストがありません。 xamlからグループスタイルを削除すると、テキストが表示されます。 anybodeは私を助けてくれる?

+2

あなたのグループヘッダXAMLに 'Name'を使用してください。 '' – XAMlMAX

+0

よろしくお願いいたします。 名前はなぜですか? –

答えて

0

MSDNは言う:

各グループがタイプCollectionViewGroupです。

subcategoryNameCollectionViewGroupのない財産ではありませんので、あなたは、グループ名を取得するには、あなたのヘッダテンプレートに

<TextBlock Text="{Binding Name}"/> 

Nameプロパティを使用する必要があります。

+0

名前の前に出力に改行を追加する方法はありますか? –

+0

''のようなものですか? – Fruchtzwerg

+0

それは、ありがとう –