WPF菜单:换行项目

时间:2011-03-12 04:08:03

标签: wpf menu menuitem

我正在处理一个WPF控件,它被放置在另一个窗口的TabControl中,我有一个菜单,它跨越我的自定义控件的顶部,并带有字母表的字母(用于索引目的):< / p>

<UserControl x:Class="thispageclass"
         xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
         xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
         xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
         xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
         mc:Ignorable="d">
    <Grid>
        <StackPanel Orientation="Vertical">
            <Menu Name="mnu">
                <MenuItem Header="A" />
                <MenuItem Header="B" />
                <MenuItem Header="C" />
                ...
                <MenuItem Header="Y" />
                <MenuItem Header="Z" />
            </Menu>

            [other elements]
        </StackPanel>
    </Grid>
</UserControl>

如果所有字母都存在,菜单会比窗口宽,所以在不使窗口变宽的情况下,您无法看到最后几个项目。如果窗口太小而使菜单环绕,似乎应该是微不足道的,但我似乎无法弄清楚如何。

2 个答案:

答案 0 :(得分:3)

只需将菜单的ItemsPanel覆盖为WrapPanel

即可

<强>示例

    <Menu.ItemsPanel>
        <ItemsPanelTemplate>
            <WrapPanel/>
        </ItemsPanelTemplate>
    </Menu.ItemsPanel>

答案 1 :(得分:0)

我创建了自己的最小样本,它让我发现这是我的自定义样式,这些样式搞砸了我的菜单。

相关问题