Zara带你快速入门WPF(4)---菜单与功能区控件

前言:许多数据驱动的应用程序都包含菜单和工具栏或功能区控件,允许用户控制操作,在WPF中,也可以使用功能区控件,所以这里介绍菜单和功能区控件。

一.菜单控件

在WPF中,菜单很容易使用Menu和MenuItem元素创建,如下面代码,其中一个主菜单和一个次菜单,以及一个子菜单项列表。

<Window x:Class="WpfApp1.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:WpfApp1"
        mc:Ignorable="d"
        Title="MainWindow" Height="450" Width="800">
    <DockPanel>
        <Menu DockPanel.Dock="Top">
            <MenuItem Header="文件">
                <MenuItem Header="首页"></MenuItem>
                <MenuItem Header="信息">
                    <MenuItem Header="首页"></MenuItem>
                </MenuItem>
                <Separator/>
                <MenuItem Header="推出"/>
            </MenuItem>
            <MenuItem Header="文件">
                <MenuItem Header="首页"></MenuItem>
                <MenuItem Header="信息">
                    <MenuItem Header="首页"></MenuItem>
                </MenuItem>
                <Separator/>
                <MenuItem Header="推出"/>
            </MenuItem>
        </Menu>
    </DockPanel>
</Window>

 运行应用程序,看到的菜单如图:

二.功能区控件

菜单控件的替代品是功能区控件,自Microsoft Office 07是微软引入新开发的功能区控件,引入这个新功能之后不久,Office以前版本的许多用户都在抱怨在新的UI中找不到操作按钮了。新Office用户没有使用过以前的用户界面。却在新的UI中得到了很好的体验,很容易找到以前版本的用户难以找到的操作按钮。

WPF功能区控件在System.Windows.Controls.Ribbon命名空间中,需要引用这个命名控件,下面这个示例中我们将要展示一个功能区控件的使用。

原文地址:https://www.cnblogs.com/ZaraNet/p/9848657.html

时间: 2024-08-27 19:45:35

Zara带你快速入门WPF(4)---菜单与功能区控件的相关文章

Zara带你快速入门WPF(4)---Command与功能区控件

前言:许多数据驱动的应用程序都包含菜单和工具栏或功能区控件,允许用户控制操作,在WPF中,也可以使用功能区控件,所以这里介绍菜单和功能区控件. 一.菜单控件 在WPF中,菜单很容易使用Menu和MenuItem元素创建,如下面代码,其中一个主菜单和一个次菜单,以及一个子菜单项列表. <Window x:Class="WpfApp1.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presen

WPF 10天修炼 - 内容控件

WPF内容控件 在WPF中,所有呈现在用户界面上的对象都称为用户界面元素.但是只有派生自System.Windows.Controls.Control类的对象才称为控件.内容控件通常是指具有Content属性的控件,Content属性并非定义在每个控件中,而是定义在基类System.Windows.Controls命名空间的ContentControl类中.注意:Content属性只接收单个内容元素. WPF内容控件分类 1.  直接继承ContentControl的控件 2.  继承Heade

Stimulsoft Reports.Wpf是针对WPF开发的报表工具控件

Stimulsoft Reports.Wpf是针对WPF开发的报表工具控件.无需上网,所有的WPF功能都能用上!丰富的界面更换功能.查看功能.打印以及导出报表功能——所有的这一切就是它都能轻松实现. 创建Stimulsoft Reports.Wpf是基于Stimulsoft团队多年开发以及使用的报表引擎来创建报表.只需简单的几行代码即可执行报表复杂的操作,报表引擎提供了创建报表的许多功能.大量的组件开发包,独特的一套属性和参数,精心构思的报表体系.很多选项都是绝对独特且仅出现该产品中.Stimu

《深入浅出WPF》学习总结之控件与布局

一.控件到底是什么 控件的本质是“数据+算法”——用户输入原始数据,算法处理原始数据并得到结果数据.问题就在于程序如何将结果数据展示给用户.同样一组数据,你可以使用LED阵列显示出来,或者是以命令行模式借助各种控制字符(如Tab)对其并输出,但这些都不如图形化用户界面(Graphics User Interface ,GUI)来的友好和方便.GUI是程序界的优胜者,但在Windows上实现图形化界面有很多中方法.每种方法又拥有自己的一套开发理念和工具.每种GUI开发与它的里理念和工具共同组成一种

.NET CORE(C#) WPF 方便的实现用户控件切换(祝大家新年快乐)

微信公众号:Dotnet9,网站:Dotnet9,问题或建议:请网站留言, 如果对您有所帮助:欢迎赞赏. .NET CORE(C#) WPF 方便的实现用户控件切换(祝大家新年快乐) 快到2020年了,祝大家新年快乐,今年2019最后一更,谢谢大家支持! 阅读导航 本文背景 代码实现 本文参考 源码 1. 本文背景 一个系统主界面,放上一个菜单,点击菜单在客户区切换不同的展示界面,这是很常规的设计,见下面展示效果图: 左侧一个菜单,点击菜单,右侧切换界面,界面切换动画使用MD控件的组件实现(自己

转载 [WPF][C#]在WPF中内嵌WindowsForm控件-使用WindowsFormsControlLibrary

[WPF][C#]在WPF中内嵌WindowsForm控件-使用WindowsFormsControlLibrary 在[WPF][C#]在WPF中内嵌WindowsForm控件一文中为各位介绍了直接在WPF中使用XAML来嵌入Windows Form控件的作法,不过不是每个人都喜欢写XAML,而且有时候会需要把已经存在的Windows Form应用程序嵌入到WPF中,所以这次就来跟大家介绍怎么使用参考dll档的方式,把dll中的Windows Form加到WPF中. 都说了要使用Windows

WPF编程之自定义Button控件样式

自.NET Framework 3.0 以后,WPF编程框架可使开发人员开发出更加令人耳目一新的桌面应用程序.它使开发工作更加方便快捷,它将设计人员和编程人员的工作分离开来.至于WPF的背景历史.框架特点.框架结构这里就不再赘述.有兴趣的同袍可在百度搜索关于WPF的相关知识介绍,如WPF. 在微软在WPF框架里提供了一些基础功能各异的控件,例如Button.TextBox.Label.Panel.TextBlock等等.微软将这些组件可视化集成到Visual Studio集成开发工具中了,这在实

WPF 使用鼠标拖动一个控件的实现[2018.7.15]

原文:WPF 使用鼠标拖动一个控件的实现[2018.7.15] Q:已经把一个Shape和一个TextBlock组合起来放到了一个Grid中,现在想要实现用鼠标拖动这个Grid到任意位置的功能,如何做? <Grid Height="50" Width="50"> <Ellipse Fill="Yellow" Stroke="Blue" Height="50" Width="50&

MFC_2.6 使用菜单列表和控件

使用菜单列表和控件 1.添加List Control控件 2.属性设置VIEW 为REPORT 3.初始化 // 1. 设置列表的扩展风格 m_ListCtrl.SetExtendedStyle(LVS_EX_GRIDLINES | LVS_EX_FULLROWSELECT | LVS_EX_CHECKBOXES);?? // 2. 添加列表的列 m_ListCtrl.InsertColumn(0, L"应用名称", LVCFMT_CENTER, 150); m_ListCtrl.In