2012-07-17 54 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評論的那樣,這看起來不像是好的設計。
你可以簡單地繼續創建子菜單。