Группировка в сетке данных - строки не отображаются - PullRequest
0 голосов
/ 05 мая 2010

Я должен сгруппировать данные в сетку данных. Для этого я сделал следующее:

  1. Добавили стиль к ресурсам как:
> <Style x:Key="GroupHeaderStyle"
> TargetType="{x:Type GroupItem}">
>         <Setter Property="Template">
>             <Setter.Value>
>                 <ControlTemplate TargetType="{x:Type GroupItem}">
>                     <Expander IsExpanded="False"
>                      >
>                         <Expander.Header>
>                             <TextBlock Text="{Binding Name}"/>
>                 </Expander.Header>
>                         <ItemsPresenter />
>                     </Expander>
>                 </ControlTemplate>
>             </Setter.Value>
>         </Setter>
>     </Style>
  1. Я применил стиль как:
    <dg:DataGrid Grid.Row="1" Name="dgAuthor" HorizontalScrollBarVisibility="Hidden"
AutoGenerateColumns="False" RowHeaderWidth="17" RowHeight="25">
                <dg:DataGrid.GroupStyle>
                    <GroupStyle ContainerStyle="{StaticResource GroupHeaderStyle}">
                        <GroupStyle.Panel>
                            <ItemsPanelTemplate>
                                <dg:DataGridRowsPresenter/>
                            </ItemsPanelTemplate>
                        </GroupStyle.Panel>
                    </GroupStyle>
                </dg:DataGrid.GroupStyle>
           </dg:DataGrid>
  1. У меня есть infoList в качестве ObservableCollection и я назначил его в качестве источника элементов следующим образом:

    ListCollectionView lcv = new ListCollectionView (infoList); lcv.GroupDescription.Add (new PropertyGroupDescription ("Автор")); dgAuthor.ItemsSource = lcv;

где Info - это класс, который имеет свойства Author, Book, Year.

Я должен сгруппировать таблицу данных по свойству Author. Я могу отобразить объяснитель, но не вижу в нем строк. Кто-нибудь может сказать мне, что не так с кодом?

1 Ответ

0 голосов
/ 06 мая 2010

Установка AutoGenerateColumns="True" явно решает проблему. Я также добавил определения столбцов.

...