0

我有一个菜单,我必须在其中显示几种项目类型。这是我现在拥有的代码示例:

   <Menu Height="23" HorizontalAlignment="Left" Margin="84,40,0,0" Name="menu1" VerticalAlignment="Top">
                    <MenuItem Header="(None)" IsTextSearchCaseSensitive="False" IsTextSearchEnabled="False">
                        <MenuItem Header="Aggregation">
                            <MenuItem Header="Sum"/>
                            <MenuItem Header="Average"/>
                        </MenuItem>
                        <Separator/>
                        <ListBox ScrollViewer.VerticalScrollBarVisibility="Visible" >
                            <MenuItem Header="Test0" IsCheckable="True"/>
                            <MenuItem Header="Test1" IsCheckable="True"/>
                            <MenuItem Header="Test2" IsCheckable="True"/>
                            <MenuItem Header="Test3" IsCheckable="True"/>
                            <MenuItem Header="Test4" IsCheckable="True"/>
                        </ListBox>
                        <Separator/>
                        <MenuItem Header="Test5" />
                    </MenuItem>
                </Menu>

如果您注意到,那里有一个 ListBox。我将垂直滚动查看器设置为可见,无论我添加多少项目,它都不会激活。如果您想知道,是的,我尝试使用 ListBoxItem 而不是 MenuItems 并没有产生任何影响。有不同的方法可以做到这一点吗?我该怎么做?谢谢

4

1 回答 1

1

您需要设置 a ,MaxHeight否则 ListBox 将根据需要拉伸以显示其所有元素。

<ListBox ScrollViewer.VerticalScrollBarVisibility="Visible" MaxHeight="250" />

也就是说,就像 AkselK 评论的那样,这看起来不像是好的设计。
您可以简单地继续创建子菜单。

于 2012-07-17T15:56:31.957 回答