2011-08-31 12 views
0

我有一个BackgroundMenu自定义颜色的背景。我在分隔符中添加了(在不同的菜单项之间):WPF中的样式分隔符匹配背景

<Separator Background="#EDECEC" Margin="0" ></Separator> 

背景颜色是#edecec。但是,我看到一个分隔符,并且颜色与上下文菜单的其余部分不匹配。它比上下文菜单更轻。有没有办法改变它?谢谢。

回答

3

菜单中的Separatordefault Template这忽略了Background,来覆盖它使用正确的键添加各自的风格,一些祖先的Resources

<Style x:Key="{x:Static MenuItem.SeparatorStyleKey}" 
     TargetType="{x:Type Separator}"> 
    <Setter Property="Template"> 
     <Setter.Value> 
      <ControlTemplate TargetType="{x:Type Separator}"> 
       <!-- ControlTemplate with a TemplateBinding to Background here --> 
      </ControlTemplate> 
     </Setter.Value> 
    </Setter> 
</Style> 
+0

我会受到只是画线,而不是达到同样的效果? – Crystal

+1

视觉上可能是的,但你需要确保包含MenuItem被禁用,你通常不需要一个可点击的分隔符。实际上使用分隔符的情况可能是最好的,因为它是为了这个目的并且被集成到框架中。 –

+0

你能提供一个TemplateBinding看起来像什么的例子吗?愚蠢的问题,我知道,但我正在把我的头跑进一堵墙(不熟悉XAML) – LeesusFreak

相关问题