手把手一起使用WPF开源UI框架MahApps.Metro

这篇具有很好参考价值的文章主要介绍了手把手一起使用WPF开源UI框架MahApps.Metro。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1、创建新项目

使用Visual Studio 2022创建新项目,如图点击创建新项目

wpfui框架,资源分享,笔记,一起学C#,wpf,ui,c#,mahapps,学习分享,开源,github

选择WPF应用(.NET Framework)

wpfui框架,资源分享,笔记,一起学C#,wpf,ui,c#,mahapps,学习分享,开源,github

配置新项目,如图:

wpfui框架,资源分享,笔记,一起学C#,wpf,ui,c#,mahapps,学习分享,开源,github
随便写几个WPF默认样式控件:

wpfui框架,资源分享,笔记,一起学C#,wpf,ui,c#,mahapps,学习分享,开源,github

2、安装 MahApps.Metro

点击工具->NuGet包管理器->管理解决方案的NuGet程序包,如图所示:

wpfui框架,资源分享,笔记,一起学C#,wpf,ui,c#,mahapps,学习分享,开源,github
搜索MahApps,点击第一个,安装即可:

wpfui框架,资源分享,笔记,一起学C#,wpf,ui,c#,mahapps,学习分享,开源,github
点击确认,如图:

wpfui框架,资源分享,笔记,一起学C#,wpf,ui,c#,mahapps,学习分享,开源,github
安装完成,如图所示:

wpfui框架,资源分享,笔记,一起学C#,wpf,ui,c#,mahapps,学习分享,开源,github

3、App.xaml修改代码

在App.xaml中修改如下代码:

<Application x:Class="FMSH_NVM_WPF.App"
             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
             xmlns:local="clr-namespace:FMSH_NVM_WPF"
             StartupUri="MainWindow.xaml">
    <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>
</Application>

如图所示:

wpfui框架,资源分享,笔记,一起学C#,wpf,ui,c#,mahapps,学习分享,开源,github
此时,重新生成并运行程序,窗体内部的控件样式已经发生改变,如图:

wpfui框架,资源分享,笔记,一起学C#,wpf,ui,c#,mahapps,学习分享,开源,github

4、MainWindow.xaml修改代码

在MainWindow.xaml中修改如下代码:

<mah:MetroWindow x:Class="FMSH_NVM_WPF.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:mah="clr-namespace:MahApps.Metro.Controls;assembly=MahApps.Metro"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        xmlns:local="clr-namespace:FMSH_NVM_WPF"
        mc:Ignorable="d"
        Title="MainWindow" Height="450" Width="800">
    <Grid>
        <Button Content="Button" HorizontalAlignment="Left" Margin="226,67,0,0" VerticalAlignment="Top"/>
        <Button Content="Button" HorizontalAlignment="Left" Margin="454,86,0,0" VerticalAlignment="Top"/>
        <Calendar HorizontalAlignment="Left" Margin="136,149,0,0" VerticalAlignment="Top"/>
        <TabControl Margin="390,170,10,22">
            <TabItem Header="TabItem">
                <Grid Background="#FFE5E5E5"/>
            </TabItem>
            <TabItem Header="TabItem">
                <Grid Background="#FFE5E5E5"/>
            </TabItem>
        </TabControl>

    </Grid>
</mah:MetroWindow>

如图所示:

wpfui框架,资源分享,笔记,一起学C#,wpf,ui,c#,mahapps,学习分享,开源,github
打开文件MainWindow.xaml.cs,修改代码如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
using MahApps.Metro.Controls;

namespace FMSH_NVM_WPF
{
    /// <summary>
    /// MainWindow.xaml 的交互逻辑
    /// </summary>
    public partial class MainWindow : MetroWindow
    {
        public MainWindow()
        {
            InitializeComponent();
        }
    }
}

如图所示:

wpfui框架,资源分享,笔记,一起学C#,wpf,ui,c#,mahapps,学习分享,开源,github
保存后重新编译运行,窗体的样式已经发生改变,如图所示:

wpfui框架,资源分享,笔记,一起学C#,wpf,ui,c#,mahapps,学习分享,开源,github
MahApps官网: https://mahapps.com/

希望本文对大家有帮助,上文若有不妥之处,欢迎指正

分享决定高度,学习拉开差距文章来源地址https://www.toymoban.com/news/detail-698026.html

到了这里,关于手把手一起使用WPF开源UI框架MahApps.Metro的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Android:手把手带你入门跨平台UI开发框架Flutter,渣本Android开发小伙如何一步步成为架构师

    3.1 框架结构 Flutter框架主要分为两层:FrameWork层、Engine层,如下图所示: 说明:开发时,主要基于Framework层;运行时,则是运行在 Engine上。每层的具体介绍如下: 3.2 原理概述 开发时,主要基于Framework层;运行时,则是运行在 Engine上 Engine是Flutter的独立虚拟机,由它适配 提

    2024年04月16日
    浏览(71)
  • 手把手一起完成Python上位机与下位机USB通信

    最近在使用Python设计上位机,下位机是ZYNQ7000,两者通过USB进行数据传输。该文章是USB通信过程的踩坑记录 首先,安装pyusb和libusb两个库,命令如下: 如图所示: 输入程序: 报错 usb.core.NoBackendError: No backend available,如图所示: 安装libusb1包,命令如下: 如图所示: 找到 l

    2024年02月07日
    浏览(44)
  • 手把手一起实现Visual Studio 2022本地工程提交(和克隆)Gitee

    登录Gitee,创建空仓库,如图: 新建仓库: 打开Visual Studio 2022创建的工程,点击创建Git存储库: 复制Gitee仓库URL: 将URL填入,点击创建并推送: 输入Gitee用户名和密码: 刷新Gitee页面,已提交代码: 如图,GlobalVariable.cs代码中日期为private string globalUpdateTime = “2023.7.29”:

    2024年02月15日
    浏览(61)
  • 【手把手一起学习】(八) Altium Designer 20修改和自定义原理图标题栏

    直接对原理图标题栏属性进行修改,操作如图所示: 修改后,并不会显示,故该方法不可用: 正确的操作如下,先选择合适的模板: 然后,进行属性的修改: 此时可以看到,已经修改成功: 默认模板并不美观,可以自定义个人风格的标题栏: 复制一份模板,重命名: 在

    2024年02月06日
    浏览(48)
  • 手把手教你使用Flask框架构建Python接口以及如何请求该接口

    Flask是一个轻量级的Web应用框架,基于Python编写,其核心思想是保持简洁,灵活性和易于扩展。 Flask是一个轻量级的Web应用框架,基于Python编写,其核心思想是保持简洁,灵活性和易于扩展。Flask提供了基本的Web开发工具和应用程序的结构,但同时也允许开发者自由选择其他库

    2024年02月06日
    浏览(107)
  • 开源AGV调度系统OpenTCS 5.11手把手开发实战(三):使用IDEA进行源码调试

    前两篇已经配置好了OpenTCS的运行环境,启动了官方发布的编译版本,下面用IDEA进行源码的调试。 1、源码下载 从官方github下载:openTCS源码 也可以直接下载省心打包版 5.11源码+JDK13打包下载 2、源码导入IDEA IDEA打开源码文件所在路径,等待加载完成。 2.1配置gradle 因为opentcs是

    2024年01月18日
    浏览(64)
  • 【共建开源】手把手教你贡献一个 SeaTunnel PR,超级详细教程!

    Apache SeaTunnel是一个非常易于使用的、超高性能的分布式数据集成平台,支持海量数据的实时同步。每天可稳定高效同步数百亿数据,已被近百家企业投入生产使用。 现在的版本不支持通过jtds的方式链接sqlserver,我们来自己写代码来实现它,并把代码提交给apache seatunnel。 1

    2024年02月09日
    浏览(53)
  • Llama 3 开源!手把手带你进行大模型推理,部署,微调和评估

    节前,我们组织了一场算法岗技术面试讨论会,邀请了一些互联网大厂朋友、参加社招和校招面试的同学,针对算法岗技术趋势、大模型落地项目经验分享、新手如何入门算法岗、该如何准备、面试常考点分享等热门话题进行了深入的讨论。 基于大模型实践和技术交流,我们

    2024年04月26日
    浏览(35)
  • 一文从0到1手把手教学UI自动化测试之数据驱动!

    在UI的自动化测试中,我们需要把测试使用到的数据分离到文件中,如果单纯的写在我们的测试模块里面,不是一个好的设计,所以不管是什么类型的自动化测试,都是需要把数据分离出来的。当然分离到具体的文件里面,文件的形式其实有很多的,这里主要说明JSON的文件和

    2024年02月06日
    浏览(48)
  • 开源!手把手教你搭建Arduino+英伟达Jetson的ROS小车(下)

    想起去年元旦收到群里面小伙伴儿的建议,希望我们也能够出一个基于NVIDIA Jetson nano 的ROS小车搭建过程,于是我们就慢慢书写了前面已经发布的推文集:     《开源!手把手教你搭建Arduino+英伟达Jetson的ROS小车(上)》中,我们介绍了一台Jetson nano小车所需要的硬件部分;

    2024年02月07日
    浏览(43)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包