概述

Material Design设计规范的受欢迎程度和实用性已经引起了 ComponentOne 技术团队的重视。ComponentOne Enterprise 2018V3 版本将全面支持Material specs的功能集。 在此之前,我们已经在ASP.NET MVC和JavaScript控件中添加了 Material 支持。 随着Material Design的日益普及,我们的桌面用户也将可以使用, ComponentOne For WinForm在2018V3中针对材料设计规范增加了全新的主题设计。

将材料主题添加到 WinForm 应用程序

ComponentOne For WinForm Edition中添加了全新的Material和Material Dark主题。 这些主题即可作为 ComponentOne 主题,也可应用于 WinForm 平台以及大多数常用的Microsoft 框架中。 这两个主题提供两种不同的配色方案,但遵循相同的材料原则和颜色规格,甚至可以作为未来材料主题的基本元素。 与Material Dark相比,Material主题是一个更为轻松的主题。

以下是 ComponentOne 控件在默认主题和Material主题中的外观比较:

使用WinForm Material Theme Designer创建新主题

Material Design颜色系统由主要颜色和次要颜色组成。 这些颜色反映了您的应用程序的主题和样式。 ComponentOne中提供的 Material Designer是一个交互式设计器,可让您为Material主题选择主要和次要风格样式。您可以保存主题并在以后直接将其应用于WinForm应用程序。

WinForms Material Designer

要更改主题的配色方案,请按照以下简单步骤操作:

  1. 运行Material Theme Designer示例。
  2. 单击“设置”选项卡,然后根据您的品牌/主题选择模板和强调颜色。
  3. 使用C1控件预览主题的外观。
  4. 单击cog图标以打开应用程序菜单。
  5. 单击“保存主题”将主题保存在首选位置。

请参阅材料主题设计器:

将Material Themes应用于WinForm 应用程序

材料主题设计器可以在 WinForm 应用程序的设计阶段和运行阶段启动。 您可以在设计时使用“主题控制器”对话框或通过修改“App.config”文件来应用主题。 要在运行时启动,请使用C1ThemeController静态类来应用主题。

使用主题控制器对话框

  1. 在Visual Studio的表单设计器中打开应用程序中的表单。

  2. 从设计器的工具箱中,拖动C1ThemeController并将其放在表单上。将出现ThemeController对话框。这使您可以选择:

    • 应用程序范围的默认主题,

    • 当前控制器的默认主题,

    • 所有支持控件的主题已经在表单上。

      在弹出的对话框中,主题最初被指定为“(none)”,适用于表单上已有的控件。这样做可以防止无意中更改这些控件上的属性设置。

  3. 单击对话框中的全部(默认)按钮,以便在所有控件上设置默认主题。注意:如果您已经自定义了一些控件,则会忽略此控件,并且不会还原默认主题。

  4. 从可用内置主题列表中选择“材质”。您还可以选择使用Material Theme Designer创建的材质主题。

  5. 单击上面提到的全部(默认)按钮,在窗体上的所有支持控件上设置默认主题。

  6. 单击确定按钮以关闭对话框并将指定的主题应用于窗体上的控件。

使用App.config文件

确保您的产品路径下包含C1.Win.C1Themes.dll。 您可以在App.Config中添加以下应用程序设置以应用基本主题:

<configuration>

  <appSettings>

      <add key="C1ApplicationTheme" value="Material"/>

  </appSettings>

</configuration>

使用代码

确保您的产品路径下包含C1.Win.C1Themes.dll。在加载前在您的应用程序中添加以下代码。

C1Theme theme = C1.Win.C1Themes.C1ThemeController.GetThemeByName(“Material”,
false); C1ThemeController.ApplyThemeToControlTree(control, theme);

自定义材质主题(高级)

C1Theme Designer应用程序允许为WinForm Edition中的任何控件轻松设计新主题。 它还允许您编辑/修改现有主题以实现您选择的外观,或与应用程序主题匹配。 您可以进一步使用此应用程序将Material主题调整到控件允许的最精细级别。

主题是一个带有.c1theme扩展名的XML文件,它由一组属性及其值组成(它决定了控件的外观)。 主题在内部划分为对应于不同控件的不同部分。 所有其他控件都可以访问“基本主题属性”部分。 此部分包含子部分“材质”,该部分存储可以更改为创建不同材质主题的“材质”属性。

例如,下面让我们尝试更改FlexGrid的材质主题,其中标题是主要颜色。

如何使用WinForms Material Theme Designer

1、 从ComponentOne开始菜单打开ComponentOne主题设计器。 按Ctrl + N或文件>新建。 选择“材质”作为新主题的基本主题。

2、 单击BTP编辑器按钮(1)。 这将打开一个新的基本主题属性编辑器。 选择“材料”属性(2)。 在这里,您可以看到材质中使用的不同颜色:

3、 转到主题树并展开C1FlexGrid节点。

4、 展开C1FlexGrid>样式>固定节点。 此节点将保存固定(标题)单元格的样式。

5、 选择ForeColo下拉列表以打开颜色选择器。

6、 您可以在选择器下拉列表中选择“参考”选项卡以选择主要颜色。

7、 您可以保存此主题并按照“在应用程序中应用材料主题”部分中的说明使用它。 您的FlexGrid现在应该具有基于主要颜色设置的标题颜色。

欢迎您下载体验 ComponentOne Enterprise,并与我们分享您是如何设计桌面应用程序以及Material主题如何与您的应用程序协同工作的宝贵经验。


ComponentOne Enterprise | 下载试用

ComponentOne是一款专注于企业应用高性能开发的 .NET 全功能控件套包,包含300余种控件,支持7大平台,涵盖7大功能模块。较于市面上其他同类产品,ComponentOne更加轻盈,功能更加强大,20多年的开发经验,将为您的应用系统带来更为安全的使用体验。纯中文操作界面,一对一技术支持,厂商级的技术服务,共同造就了这款国际顶级控件套包。

您对ComponentOne 产品的任何技术问题,都有技术支持工程师提供1对1专业解答,点击此处即可发帖提问>> 技术支持论坛

“Material Design”设计规范在 ComponentOne For WinForm 的全新尝试!的更多相关文章

  1. flutter学习之二Material Design设计规范

    前言: 最近在自学flutter跨平台开发,从学习的过程来看真心感觉不是那么一件特别容易的事.不但要了解语法规则, 还要知晓常用控件,和一些扩展性的外延知识,所以套一句古人的话“路漫漫其修远矣,无将上 ...

  2. Material Design 设计规范总结(2)

    本文是Material Design设计规范总结的第二部分,是进行UI设计与前端开发的必备参考资料. 八.布局 (1)所有可操作元素最小点击区域尺寸:48dp X 48dp. (2)栅格系统的最小单位 ...

  3. 关于ComponentOne For WinForm 的全新控件 – DataFilter数据切片器(Beta)

    概述 数据切片器在电子商务网站上很常见 - 它们可以帮助用户快速过滤所选商品,并且所有过滤选项都可以在一个地方使用,通常包含核心控件类型为:清单,范围栏和单选按钮等.在ComponentOne For ...

  4. Material UI – Material Design CSS 框架

    Material Design 是谷歌推出的全新的设计理念,采用大胆的色彩.流畅的动画播放,以及卡片式的简洁设计.Material Design 风格的设计拥有干净的排版和简单的布局,容易理解,内容才 ...

  5. Material Design之TextInputLayout使用示例

    Google在2015的IO大会上,给我们带来了更加详细的Material Design设计规范,同时,也给我们带来了全新的Android Design Support Library,在这个supp ...

  6. Android Material Design-Creating Apps with Material Design(用 Material Design设计App)-(零)

    转载请注明出处:http://blog.csdn.net/bbld_/article/details/40400031 翻译自:http://developer.android.com/trainin ...

  7. Material Design 相关资源

    Materialpalette -- Material配色工具 Materialup -- Material设计灵感: Material Design 相关好文: <超全面总结!深聊MATERI ...

  8. 开发 Material Design+RxJava+Retrofit+MVP App 参考资料

    前言     在开发一个基于 Material Design+RxJava+Retrofit+MVP 框架的 App 过程中学习的资料整理 —— 由G军仔分享 这里记录了我开发 大象 项目时,所学习的 ...

  9. Material Design(原质化设计)视觉设计语言规范 踏得网镜像

    Android 5.0 Lollipop(棒棒糖,也就是之前的代称Android L)全面实践了谷歌最新研发的 Material Design 设计语言规范,只是该设计规范并不是仅针对移动平台. 我们 ...

随机推荐

  1. Ice_cream's world I(并查集成环)

    Problem Description ice_cream's world is a rich country, it has many fertile lands. Today, the queen ...

  2. C++常用的文件操作路径函数

    shlwapi.dll中的实用API函数发布 在windows   system目录下有这个动态链接库  BOOL PathFileExists(LPCTSTR lpszPath)功能:检查文件/路径 ...

  3. 数据库查询的数据导出到xls表,集合数据导出到xls表

    //实体类package com.outxls; public class Student { private Integer studentId; private String studentNam ...

  4. python全栈开发 * 进程池,线程理论 ,threading模块 * 180727

    一.进程池 (同步 异步 返回值) 缺点: 开启进程慢 几个CPU就能同时运行几个程序 进程的个数不是无线开启的 应用: 100个任务 进程池 如果必须用多个进程 且是高计算型 没有IO型的程序 希望 ...

  5. TypeError: object() takes no parameters

    1.定义了类,在类中实现函数功能,但是需要传参数,我在类中没有建立__init__(self,) 导致没法传参.

  6. Hibernate的条件查询的几种方式+查询所有的记录

    条件查询 . 第一种,用?占位符,如: //登录(用?占位符) public List<UserPO> LoginUser(UserPO up)throws Exception{ Sess ...

  7. Oracle不连续的值,如何实现查找上一条、下一条

    1.  遇到的问题 已知一个题库,希望实现当前页切换上一题,下一题的需求. 查看得知,数据库中用于查询的字段(主键)是不连续的.如上图所示:stxh为主键number类型. 2.  实现方式lead ...

  8. git中设置http代理和取消http代理

    设置http代理 git config --global https.proxy https://127.0.0.1:1080 取消http代理git config --global --unset ...

  9. word2vec:将bin转换为txt

    转自:https://blog.csdn.net/u011684265/article/details/78024064 from gensim.models import word2vec mode ...

  10. 九、使用多线程——NSThread,GCD和NSOperation

    概述 早上起床,你先打开洗衣机,然后用热水把泡面泡上,接着打开电脑开启一天的码农生活.其中“洗衣服”.“泡泡面”和“码代码”3个任务(线程)同时进行,这就是多线程.网上有许多关于多线程的经典解释,此处 ...