0

非常に単純な方法でいくつかのヘッダー列をテンプレート化したいのですが、探している結果が得られません。Border が内部のテキストボックスだけでなく、ヘッダー全体を埋めるようにします。現在、自分のコントロールの背後にデフォルトの灰色が残っています。

<DataGrid x:Name="grdItems"
    Grid.Row="0"
    CanUserAddRows="False"
    CanUserDeleteRows="False"
    ItemsSource="{Binding Path=Items}"
    CanUserSortColumns="False" AutoGenerateColumns="False" CanUserResizeColumns="False">
<DataGrid.Columns>
<DataGridComboBoxColumn ItemsSource="{Binding Source={StaticResource GetSignalTypeValues}}" Width="auto" SelectedValueBinding="{Binding SignalType}" >
    <DataGridComboBoxColumn.HeaderTemplate>
        <DataTemplate>
            <Border Background="Orange" >
                <TextBlock Text="Signal Type" />
            </Border>
        </DataTemplate>
    </DataGridComboBoxColumn.HeaderTemplate>
</DataGridComboBoxColumn>

<DataGridTextColumn Width="auto" Binding="{Binding AmplitudeMax}">
    <DataGridTextColumn.HeaderTemplate>
        <DataTemplate>
            <Border Background="Violet">
                <StackPanel>
                    <TextBlock Text="Amplitude" HorizontalAlignment="Center" />
                    <TextBlock Text="-maximum-" HorizontalAlignment="Center" />
                </StackPanel>
            </Border>
        </DataTemplate>
    </DataGridTextColumn.HeaderTemplate>
</DataGridTextColumn>
4

1 に答える 1

2

列ヘッダーの背景色のみを使用している場合は、これを利用できます。

<DataGridComboBoxColumn  Width="auto" SelectedValueBinding="{Binding SignalType}" >
    <DataGridComboBoxColumn.HeaderStyle>
        <Style TargetType="DataGridColumnHeader">
            <Setter Property="Background" Value="Orange"/>
        </Style>
    </DataGridComboBoxColumn.HeaderStyle>
于 2012-07-26T10:38:11.860 に答える