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());
            }
  • 相关阅读:
    IDEA 基本配置
    IDEA 创建一个普通的java项目
    Intellij Idea 创建一个Web项目
    override的实现原理
    elasticsearch 复杂查询小记
    post 中文数据到elasticsearch restful接口报json_parse_exception 问题
    String intern()方法详解
    JVM的DirectMemory设置
    深入浅出 JIT 编译器
    为什么 JVM 不用 JIT 全程编译
  • 原文地址:https://www.cnblogs.com/programme-maker/p/10843543.html
Copyright © 2011-2022 走看看