【问题标题】:how to use MenuItem in another MenuItem in wpf如何在 wpf 的另一个 MenuItem 中使用 MenuItem
【发布时间】:2014-07-19 22:07:05
【问题描述】:

我想在 wpf 中制作这样的菜单

我写了这段代码:

<MenuItem Header="Menu 4" MouseEnter="mousecom" Background="DarkGreen">
       <MenuItem.ContextMenu>
             <ContextMenu>
                   <MenuItem Header="submenu 1"/>
                   <MenuItem Header="submenu 2"/>                   
             </ContextMenu>
       </MenuItem.ContextMenu>
 </MenuItem>

mousecom 是:

private void mousecom(object sender, MouseEventArgs e)
        {
            while (IsMouseOver)
            {
                (sender as Button).ContextMenu.IsEnabled = true;
                (sender as Button).ContextMenu.PlacementTarget = (sender as Button);
                (sender as Button).ContextMenu.Placement = System.Windows.Controls.Primitives.PlacementMode.Right;
                (sender as Button).ContextMenu.IsOpen = true;
            }           
        }

我的意思是我想要一个 MenuItem,然后将鼠标移到它上面会打开另一个菜单,其中包括其他一些 MenuItem。

为什么它不起作用?

我该怎么做? (请注意图片)

【问题讨论】:

    标签: c# wpf xaml visual-studio-2012 .net-4.5


    【解决方案1】:

    您错误地使用了MenuItem 控件。

    要创建子菜单,您可以执行以下操作:

    <!-- Top level menu -->
    <MenuItem>
    
        <!-- Level 1 menu -->
        <MenuItem>
    
            <!-- Level 2 menus -->
            <MenuItem />
            <MenuItem />
            <MenuItem />
        </MenuItem>
    
        <!-- More level 1 menus -->
        <MenuItem />
        <MenuItem />
        <MenuItem />
    </MenuItem>
    

    【讨论】:

    • 谢谢...你解决了我最大的问题之一 :)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-04-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多