0
所以玩弄扩展器控制和我遇到此代码设置扩展器颜色,同时关闭。但我注意到膨胀机的箭头部分保持白色。有没有办法去除箭头或区域的颜色?更改扩展器箭头
屏幕截图:
裸记住我对这个没有经验可言的,我不知道如何编辑模板等
<Page
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Width="400" OpacityMask="#91000000">
<StackPanel>
<StackPanel.Resources>
<Style TargetType="Border" x:Key="RacePitBorderStyle" >
<Style.Resources>
<LinearGradientBrush x:Key="BackBrush" StartPoint="0.5,0" EndPoint="0.5,1">
<GradientStop Color="#EF3132" Offset="0.1" />
<GradientStop Color="#D62B2B" Offset="0.9" />
</LinearGradientBrush>
</Style.Resources>
<Setter Property="Background" Value="{StaticResource BackBrush}"/>
</Style>
<DataTemplate x:Key="titleText">
<Border Style="{StaticResource RacePitBorderStyle}" Height="24">
<TextBlock Text="{Binding}"
Margin="4 0"
VerticalAlignment="Center"
Foreground="White"
FontSize="11"
FontWeight="Normal"
Width="{Binding
RelativeSource={RelativeSource
Mode=FindAncestor,
AncestorType={x:Type Expander}},
Path=ActualWidth}"
TextWrapping="Wrap"/>
</Border>
</DataTemplate>
<Style TargetType="{x:Type Expander}">
<Setter Property="HeaderTemplate" Value="{StaticResource titleText}"/>
</Style>
</StackPanel.Resources>
<Expander Name="hcontCtrl" Header="This is the header.">
<StackPanel>
<TextBox>This is a textbox</TextBox>
<Button>A button</Button>
</StackPanel>
</Expander>
</StackPanel>
</Page>
我已经重写了扩展器,以便在某些内容的中间可以有箭头。 H.B.是正确的,如果你想重新使用默认的样式,你需要从混合中取出样式。 – 2012-04-15 15:28:54
当你把箭头放在中间时,你必须使用Blend吗?如果不是你会如此友善地发布代码? – 2012-04-15 16:14:23
我没有拥有代码或不再为客户端工作,但我确实必须从Blend中提取模板。这就是WPF的工作原理(不幸的是)。 – 2012-04-15 16:19:56