我正在使用WPF功能区应用程序菜单:
https://www.microsoft.com/en-us/download/details.aspx?displaylang=en&id=11877
https://msdn.microsoft.com/de-de/library/ff799534(v=vs.110).aspx
如何以编程方式关闭“应用程序(文件)”菜单?
如何检测用户是否打开了应用程序菜单?我没有找到适当的活动
答案 0 :(得分:1)
您需要IsDropDownOpen
属性和相关事件。
XAML(这适用于.NET 4.5+,但对于4.0,它几乎相同,不同之处在于名称空间前缀):
<StackPanel>
<Ribbon>
<Ribbon.ApplicationMenu>
<RibbonApplicationMenu x:Name="Menu" DropDownOpened="RibbonApplicationMenu_DropDownOpened">
<RibbonApplicationMenuItem Header="Foo"/>
<RibbonApplicationMenuItem Header="Bar"/>
</RibbonApplicationMenu>
</Ribbon.ApplicationMenu>
</Ribbon>
</StackPanel>
代码隐藏:
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
}
private void RibbonApplicationMenu_DropDownOpened(object sender, EventArgs e)
{
// user has opened menu
Debug.WriteLine("Menu opened.");
// let's close it from code
Menu.IsDropDownOpen = false;
}
}
此外,您可能想要禁用整个菜单。这可以使用IsEnabled
属性完成。