我從這個去:WPF GridViewHeader styling questions你如何設計一個WPF GridView頭?
這樣:
現在我只需要擺脫白色空間的「大小」標頭的右側。我基本上有一個GridViewColumnHeader的模板,使它成爲一個TextBlock。有什麼辦法可以設置該標題區域的背景,以便跨越GridView的整個寬度?
添加的代碼:
這是我最右邊的列。網格不能覆蓋可用窗口區域的100%。在標題中,我需要此列右側的所有內容與列標題本身具有相同的背景。
<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
我一步步接近(我認爲)來解決這個。
添加以下代碼GridView的標籤內:
<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>
邊框是有隻是讓你可以看到這是什麼風格涵蓋了邊界。這是這樣做的放大圖像。這似乎是我想要的,如果我可以擺脫底部的白色小邊框。
所以我想刪除這個小小的白底邊框也是這個接受的答案。
它可能會幫助來發表您的現有代碼/ XAML。 – 2009-07-28 20:43:20
我現在添加了一些代碼。 – djschwartz 2009-07-29 12:49:28