Гость
Форумы / WPF, Silverlight [игнор отключен] [закрыт для гостей] / DataGrid. Заголовки столбцов внутри групп / 2 сообщений из 2, страница 1 из 1
03.12.2014, 14:45
    #38823713
Denis Stowattoff
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DataGrid. Заголовки столбцов внутри групп
Ребят, честно искал и сам пробовал реализовать - так и не нашёл, как сделать, чтобы при группировке строк в DataGrid в каждой группе отображались заголовки столбцов.

Группировку делал по примеру msdn .

Хочу перейти на WPF - как я понял, возможности у него огромные, но не всегда понятно, как эти возможности использовать.

Уточнение вопроса: Почему в приведённом ниже примере стиля шаблон не выводит заголовки столбцов при указании DataGridColumnHeadersPresenter?
Или нужно указать другой элемент шаблона для этого?
Когда-то встречал (по-моему на intuit) биндинг шаблона к элементу для того, чтобы подключать и использовать его свойства - может в этом направлении нужно копать?

Пример стиля группы для моего DataGrid
Код: html
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
  <DataGrid.GroupStyle>
    <GroupStyle>
      <GroupStyle.ContainerStyle>
        <Style TargetType="{x:Type GroupItem}">
          <Setter Property="Margin" Value="0,0,0,5"/>
          <Setter Property="Template">
            <Setter.Value>
              <ControlTemplate TargetType="{x:Type GroupItem}">
                <Expander IsExpanded="False" 
                            BorderBrush="#FF444E5F" 
                            BorderThickness="1,1,1,1" 
                            Padding="3,0,0,1">
                  <Expander.Background>
                    <LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
                      <GradientStop Color="#eceff1" Offset="0"/>
                      <GradientStop Color="#b0bec5" Offset="0.1"/>
                      <GradientStop Color="#78909c" Offset="0.9"/>
                      <GradientStop Color="#455a64" Offset="1"/>
                    </LinearGradientBrush>
                  </Expander.Background>
                  <Expander.Header>
                    <DockPanel>
                      <TextBlock FontWeight="Bold" 
                                   Text="{Binding Path=Name}" 
                                   Margin="5,0,5,0" 
                                   HorizontalAlignment="Left"/>
                      <TextBlock FontWeight="Bold" 
                                   Text="(кол-во: " 
                                   Width="auto" 
                                   HorizontalAlignment="Left"/>
                      <TextBlock FontWeight="Bold" 
                                   Text="{Binding Path=ItemCount}" 
                                   Width="auto" 
                                   HorizontalAlignment="Left"/>
                      <TextBlock FontWeight="Bold" 
                                   Text=")" 
                                   Width="auto" 
                                   HorizontalAlignment="Left"/>
                    </DockPanel>
                  </Expander.Header>
                  <Expander.Content>
                    <StackPanel>
                      <DataGridColumnHeadersPresenter Height="25"/>
                      <ItemsPresenter />
                    </StackPanel>
                  </Expander.Content>
                </Expander>
              </ControlTemplate>
            </Setter.Value>
          </Setter>
        </Style>
      </GroupStyle.ContainerStyle>
    </GroupStyle>
  </DataGrid.GroupStyle>



Может быть, кто знает хорошие бесплатные компоненты DataGrid? Лучше, если есть исходники, в которых можно поковыряться и найти нужное. Буду очень признателен.


P.S. Буду рад даже если просто исходники скинете, где это реализовано - думаю, что разберусь.
...
Рейтинг: 0 / 0
05.12.2014, 16:21
    #38826426
Ilya81
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DataGrid. Заголовки столбцов внутри групп
Задавайте просто HeaderTemplate, а не Template. Ибо DataGridColumnHeadersPresenter так просто не заставить что-то вывести, DataGrid в своём template'е ищет его по имени.
...
Рейтинг: 0 / 0
Форумы / WPF, Silverlight [игнор отключен] [закрыт для гостей] / DataGrid. Заголовки столбцов внутри групп / 2 сообщений из 2, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]