我有以下菜单。
<Menu>
<MenuItem Header="Menu1">
<MenuItem Header="Sub1"/>
<MenuItem Header="Sub2"/>
<MenuItem Header="Sub3"/>
<MenuItem Header="Sub4"/>
</MenuItem>
<MenuItem Header="Menu2" />
</Menu>
打开子菜单时,无论是向上还是向下,有什么方法可以指定我自己的方向吗?
我更喜欢子菜单始终向上渲染,因为它自己的菜单位于窗口的底部。
由于 贝
答案 0 :(得分:4)
子菜单在内部使用Popup控件实现。默认模板将Popup的位置设置为Bottom,如果有足够的空间,则会将菜单放下,否则菜单将“放弃”。
您可以通过覆盖MenuItems的控件模板来覆盖此行为。您需要将覆盖的Popup的Placement设置为Top。
以http://msdn.microsoft.com/en-us/library/aa972144.aspx为例下载默认的Aero模板。