Закругленный прямоугольник для контекстного меню в WPF - PullRequest
1 голос
/ 31 августа 2011

У меня есть горизонтальная панель стека с пользовательской кнопкой, которая при нажатии открывает контекстное меню справа от кнопки. Я хотел бы, чтобы это контекстное меню имело закругленный прямоугольник. Есть ли способ сделать это? Я думал, что могу обернуть элемент, но ContextMenu не отвечает Border. Спасибо.

1 Ответ

1 голос
/ 31 августа 2011

Возможно, вам понадобится стилизовать элемент 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;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...