菜单栏中的子菜单启用禁用

时间:2014-01-27 09:41:43

标签: wpf menu submenu

我关注菜单栏的xaml:

<Menu Height="21" VerticalAlignment="Top">
        <MenuItem Header="FILE">
            <MenuItem Header="New Search" Click="miNewSearch"/>
            <Separator/>
            <MenuItem Header="Open Search" Click="miOpenSearch"/>
            <MenuItem Header="Save" Click="miSaveSearch"/>
            <MenuItem Header="Save As"/>
            <Separator/>
            <MenuItem Header="Open/New Database" Click="miOpenNewDB"/>
            <Separator/>
            <MenuItem Header="Exit" Click="miExitApp"/>
        </MenuItem>            
    </Menu>

我的要求是在选择文件菜单时禁用子菜单,我应该使用哪个事件处理程序,我已经搜索过它但没有找到任何答案。我在Menuitem上使用了“Click”事件,如下所示:

<MenuItem Header="FILE" Click="eventhandler">

但是eventhanler在选择任何子菜单项后都会执行。请帮助,我是WPF的新手。

1 个答案:

答案 0 :(得分:0)

使用MenuItem.SubmenuOpened

所以

<MenuItem Header="FILE"
          SubmenuOpened="MenuItem_OnSubmenuOpened">

private void MenuItem_OnSubmenuOpened(object sender, RoutedEventArgs e) {
  Debug.WriteLine("Called");
}
应该在打开“文件”菜单时调用