1
我有一個水平的堆棧面板,它有一個自定義按鈕,點擊後可打開按鈕右側的上下文菜單。我想這個上下文菜單有一個四捨五入的矩形。這是一種方法嗎?我以爲我可以包裝在一個元素中,但是ContextMenu不會對邊框進行響應。謝謝。WPF中上下文菜單的圓角矩形
我有一個水平的堆棧面板,它有一個自定義按鈕,點擊後可打開按鈕右側的上下文菜單。我想這個上下文菜單有一個四捨五入的矩形。這是一種方法嗎?我以爲我可以包裝在一個元素中,但是ContextMenu不會對邊框進行響應。謝謝。WPF中上下文菜單的圓角矩形
你可能需要樣式文本菜單元素,像這樣:
<Style TargetType="ContextMenu">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="ContextMenu">
<Border CornerRadius="5" BorderBrush="Black" BorderThickness="1" Background="Blue" SnapsToDevicePixels="True">
<ItemsPresenter />
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
用法:
ContextMenu m = new ContextMenu();
m.Items.Add("Item 1");
m.Items.Add("Item 2");
m.Items.Add("Item 3");
m.PlacementTarget = sender as UIElement;
m.Placement = System.Windows.Controls.Primitives.PlacementMode.Right;
m.IsOpen = true;