2010-03-04 107 views
1

我有以下菜單。WPF菜單打開方向

 <Menu> 
     <MenuItem Header="Menu1">    
      <MenuItem Header="Sub1"/> 
      <MenuItem Header="Sub2"/> 
      <MenuItem Header="Sub3"/> 
      <MenuItem Header="Sub4"/> 
     </MenuItem> 
     <MenuItem Header="Menu2" /> 
    </Menu> 

子菜單打開時是向上還是向下的方向,有沒有什麼辦法可以指定我自己的方向?

我更喜歡子菜單總是向上渲染,因爲它自己的菜單位於窗口的底部。

由於 託尼

回答

4

子菜單被內部使用彈出控制實現。默認模板將Popup的放置位置設置爲Bottom,如果空間足夠,將放下菜單,否則菜單將「放棄」。

您可以通過覆蓋MenuItems的控件模板來覆蓋此行爲。您需要將重寫的Popup的Placement設置爲Top。

例如,下載默認的Aero模板http://msdn.microsoft.com/en-us/library/aa972144.aspx

相關問題