WPF datagrid多层标题,编辑单元格

时间:2015-05-29 14:22:35

标签: c# wpf datagrid wpfdatagrid

所以我有一个多层标头,它基本上只是一个标题,下面有两个子标题, 标题外观的代码是:

<Style x:Key="PlateDetailsmultitier" TargetType="DataGridColumnHeader" BasedOn="{StaticResource DataGridHeaderStyleBase2Tier}">

    <Setter Property="Template">
        <Setter.Value>
            <ControlTemplate>
                <Grid x:Name="Root" VerticalAlignment="Top" HorizontalAlignment="Stretch" Height="49" Margin="0,0,0,0">
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition/>
                        <ColumnDefinition Width="Auto"/>
                    </Grid.ColumnDefinitions>

                    <Grid>
                        <Grid.RowDefinitions>
                            <RowDefinition Height="24" />
                            <RowDefinition Height="1" />
                            <RowDefinition Height="24" />

                        </Grid.RowDefinitions>
                        <Grid.ColumnDefinitions>
                            <ColumnDefinition Width="49"/>
                            <ColumnDefinition Width="1" />
                            <ColumnDefinition Width="49"/>
                        </Grid.ColumnDefinitions>
                        <Rectangle Fill="LightGray" Grid.ColumnSpan="3"/>
                        <Rectangle Fill="Black" Height="1" VerticalAlignment="Top" HorizontalAlignment="Stretch" Grid.ColumnSpan="3"/>
                        <ContentPresenter Content="Plate Details" VerticalAlignment="Center" HorizontalAlignment="Center" Grid.ColumnSpan="3" MouseDown="ContentPresenter_MouseDown"/>
                        <Rectangle Fill="Black" VerticalAlignment="Stretch" Height="1" Grid.Row="1" Grid.ColumnSpan="3"/>
                        <ContentPresenter Content="t__plate" Grid.Row="2" VerticalAlignment="Center" HorizontalAlignment="Center"   MouseDown="ContentPresenter_MouseDown"/>
                        <Rectangle Fill="Black" VerticalAlignment="Stretch" Width="1"  Visibility="Visible" Grid.Row="2" Grid.Column="1" />
                        <ContentPresenter  Content="&#963;y" Grid.Row="2" Grid.Column="2" VerticalAlignment="Center" HorizontalAlignment="Center"   MouseDown="ContentPresenter_MouseDown"/>
                        <Rectangle Fill="Black" VerticalAlignment="Stretch" Width="1"  Visibility="Visible" Grid.Row="3" Grid.Column="1" />
                        <Rectangle Fill="Black" VerticalAlignment="Stretch" Width="1"  Visibility="Visible" Grid.Row="4" Grid.Column="1" />
                    </Grid>
                </Grid>
            </ControlTemplate>
        </Setter.Value>

    </Setter>
</Style>

但问题是,当我尝试编辑这些单元格时,它只选择两个列作为一个单元格,我无法编辑这些列中的任何一个。

我希望能够单独编辑两个列。 要开始使用数据网格模板列,我只使用了

 <DataGridTemplateColumn HeaderStyle="{StaticResource PlateDetailsmultitier}" Width="100">

是否有人知道此问题的解决方案。

0 个答案:

没有答案