介绍一款受欢迎的.NET 开源UI库
概述
? ? ? 今天要帶大家了解的是一款WPF的開源控件庫MahApps.Metro。MahApps.Metro是用于創建現代WPF應用程序的工具包,它許多開箱即用的好東西。目前支持的NET Framework 4.6.2及更高版本、.NET Core 3.1, .NET 5 and .NET 6 (on Windows)。官網學習文檔地址:https://mahapps.com/docs/
風格賞析
Theme有兩款,深色和淺色:下面只展示淺色主題
Progress進度條:這里提供了好幾款,樣式很優雅
datagrid:表格控件
hamburger
Dialogs:消息彈框
用法介紹
? ? ?看了上面的控件風格,想必有很多小伙伴已經迫不及待想知道這套控件庫如何在自己項目中使用了,接下來小編就帶你正式體驗MahApps.Metro.
? ?? 首先,創建項目,然后在github上搜索引用:如果要體驗預先發型版,可以勾選圖片中紅框部分
MahApps內置風格和主題:
<Application.Resources><ResourceDictionary><ResourceDictionary.MergedDictionaries><!-- MahApps.Metro resource dictionaries. Make sure that all file names are Case Sensitive! --><ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Controls.xaml" /><ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Fonts.xaml" /><!-- Theme setting --><ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Themes/Light.Blue.xaml" /></ResourceDictionary.MergedDictionaries></ResourceDictionary></Application.Resources>使用MetroWindows:要開始全面的MahApps造型和全面的窗口支持,您需要將您的普通窗口更改為我們的MetroWindows。
打開你的主窗口,通常命名為MainWindow.xaml,在打開窗口標記中添加名稱空間屬性
xmlns:mah="clr-namespace:MahApps.Metro.Controls;assembly=MahApps.Metro" 或者 xmlns:mah="http://metro.mahapps.com/winfx/xaml/controls"前臺xmal全部代碼如下:
<mah:MetroWindow x:Class="WpfApp8.StartView"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:mah="clr-namespace:MahApps.Metro.Controls;assembly=MahApps.Metro"xmlns:cal="http://www.caliburnproject.org" xmlns:local="clr-namespace:WpfApp8"mc:Ignorable="d"GlowBrush="{DynamicResource MahApps.Brushes.Accent}"ResizeMode="CanResizeWithGrip"Title="StartView" Height="300" Width="600" WindowStartupLocation="CenterScreen"><StackPanel><TextBox Name="TextContent"/><Button x:Name="testBtn" Content="testBtn" Background="LightCyan"/><ListBox Name="ListBoxItems" MinHeight="230" Background="LightGray"cal:Message.Attach="[Event SelectionChanged] = [Action ListBoxItems_SelectionChanged($source,$eventArgs)];[Event MouseUp]=[ListBoxItems_MouseUp($source,$eventArgs)]"/></StackPanel> </mah:MetroWindow>您還需要修改窗口文件的代碼,以便基類與XAML文件的MetroWindow類匹配:
using MahApps.Metro.Controls;namespace WpfApp8 {/// <summary>/// StartView.xaml 的交互邏輯/// </summary>public partial class StartView : MetroWindow{public StartView(){InitializeComponent();}} }這樣保存后重新編譯運行,就會看到窗體的樣式已經發生改變,完全變成了Metro風格。
運行結果
源碼下載
百度網盤鏈接:https://pan.baidu.com/s/1dD8HaoVDz6G8xeipRWaQ-Q
提取碼:6666
總結
以上是生活随笔為你收集整理的介绍一款受欢迎的.NET 开源UI库的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 饿了么超级会员,年卡低至108元!饿了么
- 下一篇: 【鉴权/授权】一步一步实现一个简易JWT