2011-08-31 44 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

相關問題