मैं इस से चला गया: WPF GridViewHeader styling questionsआप एक WPF ग्रिड व्यू हेडर कैसे शैलीबद्ध करते हैं?
इस के लिए:
अब मैं सिर्फ "आकार" शीर्षलेख की दाईं ओर सफेद स्थान से छुटकारा पाने की जरूरत है। मैं मूल रूप से GridViewColumnHeader के लिए एक टेम्पलेट है जो इसे टेक्स्टब्लॉक बनाता है। क्या कोई तरीका है कि मैं उस हेडर क्षेत्र के लिए पृष्ठभूमि सेट कर सकता हूं ताकि वह ग्रिड व्यू की पूरी चौड़ाई फैल सके?
में कोड:
यह मेरा सबसे दाएं कॉलम है। ग्रिड 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>
अद्यतन
मैं कर रहा हूँ एक कदम और करीब (मुझे लगता है कि) इस को हल करने के।
मैं 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 पोस्ट करने के लिए मदद मिलेगी। –
मैंने अभी कुछ कोड जोड़ा है। – djschwartz