2012-07-17 84 views
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,并没有什么区别。有没有不同的方式来做到这一点?我该如何解决它? 谢谢

+0

使用菜单中的一个ListBox可能不是你想要的。考虑重新思考/重新设计你的菜单。 – AkselK 2012-07-17 15:53:03

回答

1

您需要设置一个MaxHeight,否则ListBox将只需展开它所需的所有元素。

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

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