在WinForms中使用MD皮肤

Material Skin for .Net WinForms

TODO: 本文由 赤石俊哉 翻译整理,您可以随意用于学习交流使用,转载之前请注明出处。


参考
GitHub - IgnaceMaes/MaterialSkin: Theming .NET WinForms, C# or VB.NET, to Google’s Material Design Principles.
以上参考文档为官方Readme文档。

当前(本文中的时间均以2016年7月23日为准),MaterialSkin的组件情况

SupportedDark & Light versionDisabled modeAnimated
CheckboxYesYesYes
DividerYesYesN/A
Flat ButtonYesYesYes
LabelYesYesN/A
Radio ButtonYesYesYes
Raised ButtonYesYesYes
Single-line text fieldYesYesNo
TabControlYesN/AN/A
ContextMenuStripYesYesYes
ListViewYesYesNo
ProgressBarYesYesNo
FloatingActionButtonNoNoNo
DialogsNoNoNo
SwitchNoNoNo
More…NoNoNo

如何在你的程序中实现MaterialSkin

1.向你的工程中添加库

你可以用很多种方法来做这一步,最简单的方法就是添加一个NuGet包。右键点击你的工程,然后点击「管理NuGet程序包…」。搜索「MaterialSkin」然后点击安装。只要安装好了,库就会包含在在你的工程引用中。
当然你也可以通过程序包管理器控制台安装:PM> Install-Package MaterialSkin

另外一个方法就是从GitHub上克隆这个工程,然后自己编译这个库然后添加到自己的工程的引用中。

2.将MaterialSkin控件添加到你的工具栏中

如果你是通过NuGet来安装的,那么MaterialSkin.dll这个文件就会在//bin/Debug文件夹中。
你只需要将这个MaterialSkin.dll文件拖到你的IDE的工具栏上,所有的控件都会被添加到工具栏上。

3.继承MaterialForm

打开你想要添加皮肤的窗体的后端代码,让它继承MaterialForm,代替继承Form。
别忘了在using中添加库,它才能找到MaterialForm类!

C#(Form1.cs)
public partical class Form1 : MaterialForm

VB.NET(Form1.Designer.vb)

Partial Class Form1
    Inherits MaterialSkin.Controls.MaterialForm

4.初始化你的配色方案

设置你喜欢的颜色和主题。也同时将窗体添加到管理器以便它可以在之后更新窗体的配色方案和主题的变化。

C#(Form1.cs)
public Form1()
{
    InitializeComponent();

    var materialSkinManager = MaterialSkinManager.Instance;
    materialSkinManager.AddFormToManage(this);
    materialSkinManager.Theme = MaterialSkinManager.Themes.LIGHT;
    materialSkinManager.ColorScheme = new ColorScheme(Primary.BlueGrey800, Primary.BlueGrey900, Primary.BlueGrey500, Accent.LightBlue200, TextShade.WHITE);
}
VB.NET(Form1.vb)
Imports MaterialSkin

Public Class Form1

    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        Dim SkinManager As MaterialSkinManager = MaterialSkinManager.Instance
        SkinManager.AddFormToManage(Me)
        SkinManager.Theme = MaterialSkinManager.Themes.LIGHT
        SkinManager.ColorScheme = New ColorScheme(Primary.BlueGrey800, Primary.BlueGrey900, Primary.BlueGrey500, Accent.LightBlue200, TextShade.WHITE)
    End Sub
End Class

在WPF中使用Material Design

如果你喜欢.NET和MD,你当然得去看看ButchersBoy的Material Design Xaml Toolkit(英文)
它是在WPF中使用的一个比较相近的工程。

示例图片

WinForms Material Design
WinForms Material Design
WinForms Material Design
WinForms Material Design
WinForms Material Design

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值