ich aus dieser ging: WPF GridViewHeader styling questionsWie formatieren Sie einen WPF GridView-Header?
dazu:
Jetzt muss ich von den weißen Raum rechts von der „Größe“ Header erhalten nur los zu werden. Ich habe im Grunde eine Vorlage für den GridViewColumnHeader, die es zu einem TextBlock macht. Gibt es eine Möglichkeit, den Hintergrund für diesen Kopfbereich so festzulegen, dass er die gesamte Breite des GridViews umfasst?
ADDED Code:
Das ist mein ganz rechten Spalte. Das Raster überspannt nicht 100% der verfügbaren Fensterfläche. In der Kopfzeile muss alles auf der rechten Seite dieser Spalte denselben Hintergrund wie die Spaltenüberschriften haben.
<Style x:Key="GridHeaderRight" TargetType="{x:Type GridViewColumnHeader}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type GridViewColumnHeader}">
<TextBlock Text="{TemplateBinding Content}" Padding="5" Width="{TemplateBinding Width}" TextAlignment="Right">
<TextBlock.Background>
<LinearGradientBrush StartPoint="0,0" EndPoint="0,1">
<GradientStop Offset="0.0" Color="#373638" />
<GradientStop Offset="1.0" Color="#77797B" />
</LinearGradientBrush>
</TextBlock.Background>
</TextBlock>
</ControlTemplate>
</Setter.Value>
</Setter>
<Setter Property="OverridesDefaultStyle" Value="True" />
<Setter Property="Background" Value="Green" />
<Setter Property="Foreground" Value="White" />
<Setter Property="FontSize" Value="12" />
<Setter Property="Background">
<Setter.Value>
<LinearGradientBrush StartPoint="0,0" EndPoint="0,1">
<GradientStop Offset="0.0" Color="#373638" />
<GradientStop Offset="1.0" Color="#77797B" />
</LinearGradientBrush>
</Setter.Value>
</Setter>
</Style>
<GridViewColumn Width="200" HeaderContainerStyle="{ StaticResource GridHeaderRight}" Header="Size">
<GridViewColumn.CellTemplate>
<DataTemplate>
<TextBlock Text="{Binding Path=EmployeeNumber}" HorizontalAlignment="Right"></TextBlock>
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
UPDATE
Ich bin einen Schritt näher (glaube ich) zu dieser Lösung.
Ich habe den folgenden Code innerhalb des Gridview-tag:
<GridView.ColumnHeaderContainerStyle>
<Style TargetType="GridViewColumnHeader">
<Setter Property="BorderThickness" Value="1"></Setter>
<Setter Property="BorderBrush" Value="Green"></Setter>
<Setter Property="Height" Value="Auto"></Setter>
<Setter Property="Background">
<Setter.Value>
<LinearGradientBrush StartPoint="0,0" EndPoint="0,1">
<GradientStop Offset="0.0" Color="#373638" />
<GradientStop Offset="1.0" Color="#77797B" />
</LinearGradientBrush>
</Setter.Value>
</Setter>
</Style>
</GridView.ColumnHeaderContainerStyle>
Die Grenze ist es nur so können Sie die Grenze sehen, was dieser Stil abdeckt. Dies ist ein vergrößertes Bild dessen, was dies tut. Es scheint, was ich will, wenn ich den kleinen weißen Rand auf der Unterseite loswerden kann.
Also ich denke, das Entfernen dieser kleinen weißen unteren Grenze wäre auch eine akzeptierte Antwort für diese.
Es wird wahrscheinlich Ihre vorhandenen Code/XAML schreiben helfen. –
Ich habe jetzt einen Code hinzugefügt. – djschwartz