Re: Заголовок к DataGrid
От: Osaka  
Дата: 28.08.12 17:54
Оценка:
    <Style x:Key="DataGridMultilevelHeader" TargetType="{x:Type DataGrid}">
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="{x:Type DataGrid}">
                    <Border BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}">
                        <DockPanel>
                            <DockPanel DockPanel.Dock="Top">
                                
                                <StackPanel x:Name="band1" Orientation="Vertical" DockPanel.Dock="Left">
                                    <StackPanel Orientation="Horizontal" Height="0">
                                        <Button Width="{Binding ElementName=col1, Path=ActualWidth}"/>
                                    </StackPanel>
                                    <Button Height="21" Focusable="False" Content=""/>
                                </StackPanel>
                                
                                <StackPanel x:Name="band2" Orientation="Vertical" DockPanel.Dock="Left">
                                    <StackPanel Orientation="Horizontal" Height="0">
                                        <Button Width="{Binding ElementName=col2, Path=ActualWidth}"/>
                                        <Button Width="{Binding ElementName=col3, Path=ActualWidth}"/>
                                        <Button Width="{Binding ElementName=col4, Path=ActualWidth}"/>
                                    </StackPanel>
                                    <Button Height="21" Content="Набор 1" Focusable="False"/>
                                </StackPanel>
                                
                                <StackPanel x:Name="band3" Orientation="Vertical">
                                    <Button Height="21" Content=""/>
                                </StackPanel>
                                
                            </DockPanel>
                            <DataGridColumnHeadersPresenter DockPanel.Dock="Top"/>
                            <DataGridRowsPresenter/>
                        </DockPanel>
                    </Border>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>


        <DataGrid Style="{StaticResource DataGridMultilevelHeader}">
            <DataGrid.Columns>
                <DataGridTextColumn Header="Дата" x:Name="col1" Width="100"/>
                <DataGridTextColumn Header="Значение 1" x:Name="col2" Width="100"/>
                <DataGridTextColumn Header="Значение 2" x:Name="col3" Width="100"/>
                <DataGridTextColumn Header="Значение 3" x:Name="col4" Width="100"/>
            </DataGrid.Columns>
        </DataGrid>
Данное сообщение является художественным произведением и освещает вымышленные события в вымышленном мире. Все совпадения с реальностью являются случайными. Не является инвестиционной рекомендацией.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.