WPF - Как разработать управление меню для удаления левого поля?

Я добавил управление меню по умолчанию к своему пользовательскому элементу управления. Я должен разработать меню для удаления левого поля, содержащего пространство для значка или флажка. Как я могу сделать это?

XAML:

<Menu>
    <MenuItem Header="MyMenu" FontSize="10">
        <MenuItem Header="Options..." />
        <MenuItem Header="About" />
    </MenuItem>
</Menu>  

Это в настоящее время представляет как любое другое управление Меню из поля:

alt text

Я не хочу поле или столбец слева от пунктов меню. Это обычно используется для значков и т.д.

13
задан Community 8 February 2017 в 14:26
поделиться

1 ответ

Это не очень просто, но вам нужно создать MenuItemStyle, проще всего с помощью Expression Blend:

<Menu>
    <MenuItem Header="MyMenu" Style="{DynamicResource MenuItemStyle1}">
        <MenuItem Header="Options..." />
        <MenuItem Header="About" />
    </MenuItem>
</Menu> 

Он создает чрезвычайно подробный набор шаблонов и стилей, и вам нужно отредактируйте элемент меню, чтобы удалить первый столбец сетки с фиксированной шириной, затем в шаблоне SubMenuBorder ContentControl удалите прямоугольники, которые образуют затенение фона. Я приложил образец проекта с удаленными полями. Загрузите образец проекта здесь.

4
ответ дан 2 December 2019 в 00:45
поделиться
Другие вопросы по тегам:

Похожие вопросы: