zoukankan      html  css  js  c++  java
  • 一篇文章教你如何轻松实现Windows 10风格的表单

    点击获取DevExpress完整版下载

    DevExpress WinForms Subscription拥有180+组件和UI库,能为Windows Forms平台创建具有影响力的业务解决方案。DevExpress WinForms能完美构建流畅、美观且易于使用的应用程序,无论是Office风格的界面,还是分析处理大批量的业务数据,它都能轻松胜任!

    FluentDesignForm是Windows 10风格的表单,具有以下特点:

    • 嵌入式Hamburger Menu (AccordionControl)
    • Hamburger Menu的自适应布局模式
    • Acrylic Material效果
    • 显示高亮可视化效果

    IMPORTANT:Fluent Design Forms不能用作MDI容器。

    新增Fluent Design Forms

    要使用FluentDesignForm创建新项目,请使用DevExpress Template Gallery的Fluent Design Application项目模板。

    将标准表单转化为Fluent Design Forms

    要将现有表单转换为FluentDesignForm,请使用Convert to Fluent Design Form命令,该命令可从以下位置获得:

    • 表单的智能标签菜单
    • FormAssistant组件(请参阅Form Assistant

    要用代码手动转换表单,请将表单的基类更改为FluentDesignForm,您还需要将DevExpress.XtraBars库添加到您的项目中。

    C#

    namespace DXApplication1 {
    public partial class Form1 : DevExpress.XtraBars.FluentDesignSystem.FluentDesignForm {
    public Form1() {
    InitializeComponent();
    }
    }
    }
    
    

    VB.NET

    Partial Public Class Form1
    Inherits DevExpress.XtraBars.FluentDesignSystem.FluentDesignForm
    
    Public Sub New()
    InitializeComponent()
    End Sub
    End Class
    
    表单元素

    当使用Template Gallery和Convert to Fluent Design Form命令将Fluent Design Form添加到项目中时,它将创建三个控件:

    • 启用HamburgerMenu视图类型的AccordionControl - 允许您使用以简单或分层列表形式排列的自定义命令来实现菜单(导航控件)。HamburgerMenu是AccordionControl提供的两种视图类型之一(AccordionControl.ViewType属性设置为HamburgerMenu),此视图类型具有:
      • Hamburger按钮(展开/折叠菜单)
      • 三种显示模式(内联,覆盖和最小)。 调整表单大小时,Fluent Design Form会自动在这些模式之间切换。
    • FluentDesignFormControl - 表单的标题,用于显示表单的标题,并允许您在其表面上显示自定义命令(栏项目链接)。
    • FluentDesignFormContainer - 将自定义控件添加到此容器中,来在表单的客户区域中显示它们。
    DevExpress WinForms帮助文档
    Acrylic 和 Reveal Highlight效果

    FluentDesignForm.EnableAcrylicAccent设置可为嵌入式Accordion Control (Hamburger Menu)启用Acrylic Material(半透明纹理)和Reveal Highlight效果。 请注意,Accordion Control仅在串联模式下支持此视觉效果。

    DevExpress WinForms帮助文档

    注意:仅当应用程序在Windows 10 Version 1803 (OS build 17134) 或更高版本下运行时,才会启用这两种效果。 由于Windows API的最新更改,在Windows 10 Build 1903中暂时禁用了这些效果。

    自适应布局

    使用Adaptive Layout功能(默认情况下启用),当您扩展或缩小表单时,Fluent Design Form会自动在 Inline、Overlay和Minimal直接之间切换到Hamburger Menu的显示模式。

    DevExpress WinForms帮助文档

    下面将描述Hamburger Menu的显示模式(AccordionOptionsHamburgerMenu.DisplayMode)以及触发显示模式切换的表单宽度。

    注意:Fluent Design Form会以Minimal模式自动将Hamburger Menu的DockStyle设置为Top,从而将菜单呈现为条形。 在其他dock样式中,Hamburger Menu呈现为方形Hamburger按钮。

    在设计时,OptionsAdaptiveLayout.AdaptiveLayout选项被隐藏,您可以按以下方式在代码中对其进行修改。

    C#

    public partial class Form1 : DevExpress.XtraBars.FluentDesignSystem.FluentDesignForm {
    public Form1() {
    InitializeComponent();
    this.OptionsAdaptiveLayout.AdaptiveLayout = false;
    }
    ...
    }

    VB.NET

    Public Sub New()
    InitializeComponent()
    Me.OptionsAdaptiveLayout.AdaptiveLayout = False
    End Sub
    

    当 AccordionControl.ViewType 属性设置为Standard时,不支持自适应布局功能。

    Hamburger Menu重叠标题栏

    默认情况下,Accordion Control (Hamburger Menu) 在某些外观中占据整个窗体高度,与标题栏重叠。

    DevExpress WinForms帮助文档

    必要时,可以通过覆盖ExtendNavigationControlToFormTitle虚拟属性来禁用此操作。

    C#

    public partial class Form1 : FluentDesignForm {
    //...
    protected override bool ExtendNavigationControlToFormTitle {
    get { return false; }
    }
    }
    

    VB.NET

    Protected Overrides ReadOnly Property ExtendNavigationControlToFormTitle As Boolean
    Get
    Return False
    End Get
    End Property
    

    注意:在以下情况下支持标题重叠功能:

    • 您的表单使用以下皮肤之一:
      • The Bezier
      • Office 2019 Colorful
      • Office 2016 Black
      • Office 2016 Dark
      • Office 2016 Colorful
    • 该应用程序在Windows 10 Version 1803 (OS build 17134)或更高版本上运行。

    上DevExpress中文网,获取第一手最新产品资讯!

    DevExpress技术交流群3:700924826      欢迎一起进群讨论

  • 相关阅读:
    Why use strong named assemblies?
    Dependency Walker
    “等一下,我碰!”——常见的2D碰撞检测
    MOBA游戏的网络同步技术
    VS2017如何配置openGL环境
    UE4关于Oculus Rift (VR)开发忠告
    UE4 的json读写方式
    Blueprint 编译概述
    UE4编码规范
    Unreal Enginer4特性介绍
  • 原文地址:https://www.cnblogs.com/AABBbaby/p/14328672.html
Copyright © 2011-2022 走看看