WPF菜单打开方向

时间:2010-03-04 11:52:17

标签: wpf menu

我有以下菜单。

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

打开子菜单时,无论是向上还是向下,有什么方法可以指定我自己的方向吗?

我更喜欢子菜单始终向上渲染,因为它自己的菜单位于窗口的底部。

由于 贝

1 个答案:

答案 0 :(得分:4)

子菜单在内部使用Popup控件实现。默认模板将Popup的位置设置为Bottom,如果有足够的空间,则会将菜单放下,否则菜单将“放弃”。

您可以通过覆盖MenuItems的控件模板来覆盖此行为。您需要将覆盖的Popup的Placement设置为Top。

http://msdn.microsoft.com/en-us/library/aa972144.aspx为例下载默认的Aero模板。