zoukankan      html  css  js  c++  java
  • WPF菜单和布局(2)

    简单树形结构:

    <Grid>
            <WrapPanel >
                <Menu >
                    <MenuItem>
    
                    </MenuItem>
                </Menu>
            </WrapPanel>
        </Grid>
    </Window>

     用VS软件实现WPF菜单控件和布局,实现结果如下图:

      图一      图二

    可能遇到的知识点如下图所示:

      

    图三                                                    图四

    参考代码如下:

    <Window x:Class="WpfApplication1.MainWindow"
            xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
            xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
            xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
            xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
            xmlns:local="clr-namespace:WpfApplication1"
            mc:Ignorable="d"
            Title="MainWindow" Height="350" Width="525">
        <Grid>
            <WrapPanel >
            <Menu IsMainMenu="True">
                    <MenuItem Header="文件(_F) " IsCheckable="False" 
                       IsEnabled="True" ToolTip="文件相关的操作 "><!--Menuitem控件为子容器,IsCheckable=" "设置是否打勾,IsEnabled=" "表示文件菜单是否可用,ToolTip="  "显示快捷的文字提示-->  
                        <MenuItem Header="新建(_N)" Click="MenuItem_Click"></MenuItem >
                        <MenuItem Header="打开(_O)"></MenuItem >
                        <Separator ></Separator>    <!--添加下划线,分组-->
                        <MenuItem Header="添加(_D)"></MenuItem >
                        <Separator ></Separator>
                        <MenuItem Header="关闭(_C)"></MenuItem >
                    </MenuItem >
                    <MenuItem Header="编辑(_E)" IsCheckable="True">
                        <MenuItem Header="MenuItem1"></MenuItem >
                        <MenuItem Header="MenuItem2"></MenuItem >
                    </MenuItem >
                    <MenuItem Header="视图(_V)">
                        <MenuItem Header="MenuItem3"></MenuItem >
                        <MenuItem Header="MenuItem4"></MenuItem >
                    </MenuItem >
                    <MenuItem Header="项目(_P)">
                        <MenuItem Header="MenuItem5"></MenuItem >
                        <MenuItem Header="MenuItem6"></MenuItem >
                    </MenuItem >
                </Menu >
                <WrapPanel.ContextMenu>
                    <ContextMenu >
                        <MenuItem Header=" 右键菜单1">
                            <MenuItem Header=" 子菜单1"></MenuItem>
                        </MenuItem>
                        <MenuItem Header=" 右键菜单2">
                            <MenuItem Header=" 子菜单1"></MenuItem>
                        </MenuItem>
                        <MenuItem Header=" 右键菜单3">
                            <MenuItem Header=" 子菜单1"></MenuItem>
                        </MenuItem>
                    </ContextMenu>
                </WrapPanel.ContextMenu>
            </WrapPanel>
        </Grid>
    </Window>

    后台代码如下:

    namespace WpfApplication1
    {
        /// <summary>
        /// MainWindow.xaml 的交互逻辑
        /// </summary>
        public partial class MainWindow : Window
        {
            public MainWindow()
            {
                InitializeComponent();
            }
    
            private void MenuItem_Click(object sender, RoutedEventArgs e)
            {
                var mi = (MenuItem)sender;
                MessageBox.Show(mi.Header.ToString());
            }
  • 相关阅读:
    以管理员权限运行程序?
    vb6 判断64位操作系统
    vb6动态创建webbrowser
    vb6中webbrowser控件树转换备忘
    vb6异步ADO操作
    sql compact 使用EF无法更新的问题?
    本地vbs调试快速显示输出
    c# 加密转载 备忘
    vb.net 动态调用api
    SharePoint List 查看器
  • 原文地址:https://www.cnblogs.com/programme-maker/p/10843543.html
Copyright © 2011-2022 走看看