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