我有以下菜单。
<Menu>
<MenuItem Header="Menu1">
<MenuItem Header="Sub1"/>
<MenuItem Header="Sub2"/>
<MenuItem Header="Sub3"/>
<MenuItem Header="Sub4"/>
</MenuItem>
<MenuItem Header="Menu2" />
</Menu>
打开时的子菜单是向上或向下,有什么办法可以自己指定方向吗?
我希望子菜单始终向上呈现,因为它本身位于窗口的底部。
谢谢 托尼
最佳答案
子菜单是使用 Popup 控件在内部实现的。默认模板将弹出窗口的位置设置为底部,如果有足够的空间,则会将菜单下拉,否则菜单将“下拉”。
您可以通过覆盖菜单项的控件模板来覆盖此行为。您需要将覆盖的弹出窗口的位置设置为顶部。
从 http://msdn.microsoft.com/en-us/library/aa972144.aspx 下载默认的 Aero 模板举个例子。
关于WPF菜单打开方向,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2378993/