我有一个菜单,我必须显示几种项目类型。以下是我现在所拥有的代码示例:
<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,并没有产生任何影响。有没有不同的方法来做到这一点?我该怎么办呢? 感谢
答案 0 :(得分:1)
你需要设置一个MaxHeight
,否则ListBox会尽可能多地拉伸以显示它的所有元素。
<ListBox ScrollViewer.VerticalScrollBarVisibility="Visible" MaxHeight="250" />
那就像AkselK评论的那样,这看起来不像是好的设计 你可以继续创建子菜单。