zoukankan      html  css  js  c++  java
  • MahApps.Metro控件更換微軟視窗主題

    先來看一下微軟默認的視窗主題(左:Window)與MahApps.Metro的視窗主題(右:MetroWindow),
    Window
    image
     
    MetroWindow
    image
     

    MetroWindow似乎美觀多了,接著就開始介紹如何以MahApps.Metro更換視窗主題。

    第一步:NuGet載入MahApps.Metro.ReSources


    image

    第二步:將Window改為MetroWindow

    <controls:MetroWindow x:Class="MetroControlStyleDemo.MainWindow"
            xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
            xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
            xmlns:controls="clr-namespace:MahApps.Metro.Controls;assembly=MahApps.Metro"
            Title="MainWindow" Height="350" Width="525"> 
        <Grid>
        </Grid>
    </controls:MetroWindow>

    別忘了MainWindow.Xaml.cs中也要修改,否則編譯時就會出現錯誤了。

        public partial class MainWindow : MetroWindow
        {
            public MainWindow()
            {
                InitializeComponent();
            }
        }

     
    到這裡已經完成一半了,現在視窗的樣式如下,
     
    image
     

    第三步:給定MetroWindow樣式

    我的做法是將設定樣式的Xaml碼放在App.Xaml中,如此Metro亦會去改寫全域的微軟控件樣式,而不用分別對一個一個下指令。

    程式碼如下,

        <Application.Resources>
            <ResourceDictionary>
                <ResourceDictionary.MergedDictionaries>
                    <ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Colours.xaml" />
                    <ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Fonts.xaml" />
                    <ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Controls.xaml" />
                    <ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Accents/Blue.xaml" />
                    <ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Accents/BaseLight.xaml" />
                </ResourceDictionary.MergedDictionaries>
            </ResourceDictionary>
        </Application.Resources>

    如此一來就完成囉。

    http://elysium.asvishnyakov.com/Downloads.cshtml#header

    可以去以上網址下載Demo檔,有更多的樣式可以玩玩看。

    參考資料:

    mahapps.metro documentation

     
  • 相关阅读:
    Mac电脑kernel_task占用内存过高
    Mac上的聚焦搜索无法查找到应用
    Mac电脑变卡的原因:
    IE浏览器整页截屏程序
    拓扑排序算法的一个应用
    简单演示mySQL后端数据库关系信息逆向加入到PowerDesigner的物理数据模型和概念数据模型中
    解密存储过程或函数
    C#画图
    .NET设计模式开篇
    非重复随机序列生成算法
  • 原文地址:https://www.cnblogs.com/YangMark/p/3171973.html
Copyright © 2011-2022 走看看