使用分離式的:
<Style x:Key="SeparatorStyle1" TargetType="{x:Type Separator}">
<Setter Property="Background" Value="{DynamicResource
{x:Static SystemColors.ControlDarkBrushKey}}"/>
<Setter Property="Margin" Value="0,2,0,2"/>
<Setter Property="Focusable" Value="false"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type Separator}">
<Border Height="1" SnapsToDevicePixels="true"
Background="#FFCCD480" BorderBrush="#FF633A3A" BorderThickness="0,0,0,1"/>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
,並使用它像這樣
<ComboBox Background="#FFD2D2B5">
<ListBoxItem Content="item1"/>
<ListBoxItem Content="item2"/>
<Separator Style="{DynamicResource SeparatorStyle1}"/>
<ListBoxItem Content="item3"/>
應該這樣做
添加邊框工作。爲什麼是這樣? – jmlumpkin 2010-11-24 16:43:17
其實它主要是因爲分隔符顯然有一個不爲零的默認邊距。因此,如果沒有邊框,彈出式菜單的背景顏色將會顯示。 (實際上,如果您只將分隔符的邊距設置爲零,您也不會看到白色背景,儘管項目之間的間距可能稍微偏離)。放置邊框將有效地「隱藏」彈出式菜單的背景。希望這是有道理的。 – ASanch 2010-11-24 17:24:57