簡體   English   中英

WPF中上下文菜單的圓角矩形

[英]Rounded Rect for Context Menu in WPF

我有一個帶有自定義按鈕的水平堆棧面板,單擊該按鈕時會在該按鈕的右側打開一個上下文菜單。 我希望該上下文菜單具有四舍五入的矩形。 這是一種方法嗎? 我以為我可以將in包裝在一個元素中,但是ContextMenu不響應Border。 謝謝。

您可能需要像這樣設置ContextMenu元素的樣式:

<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;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM