WPF Ribbon ApplicationMenu 打开和关闭事件

WPF Ribbon ApplicationMenu open and close event

我正在使用 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

您需要 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 属性.

来完成