精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

現代WPF界面輕松實現:探秘輕量級WPFUI庫,MVVM與依賴注入一體化

開發 后端
最近要做個小工具軟件,發現以前用的WPF界面有點老了,所以在網上找下,發現一個用起來還可以的WPFUI庫,MVVM也支持得很好,同時支持微軟官方的依賴注入框架Microsoft.Extensions.DependencyInjection。

概述:一款名為WPFUI的輕量級開源庫,為WPF應用程序提供現代化界面。支持MVVM和Microsoft.Extensions.DependencyInjection,簡單上手。無第三方依賴,內置兩套皮膚,可自定義樣式。適用于一般應用場景,不受MVVM框架限制。通過簡單的引用和配置,快速構建現代化WPF應用,提升用戶體驗

最近要做個小工具軟件,發現以前用的WPF界面有點老了,所以在網上找下,發現一個用起來還可以的WPFUI庫,MVVM也支持得很好,同時支持微軟官方的依賴注入框架Microsoft.Extensions.DependencyInjection。

先來看看運行效果:

使用方法也比較簡單。

1、引用庫:

2、App.xaml引入資源

<Application
    x:Class="DesktopApp.App"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:ui="http://schemas.lepo.co/wpfui/2022/xaml"
    DispatcherUnhandledException="OnDispatcherUnhandledException"
    Exit="OnExit"
    Startup="OnStartup">
    <Application.Resources>
        <ResourceDictionary>
            <ResourceDictionary.MergedDictionaries>
                <ui:ThemesDictionary Theme="Dark" />
                <ui:ControlsDictionary />
            </ResourceDictionary.MergedDictionaries>
        </ResourceDictionary>
    </Application.Resources>
</Application>

3、App.xaml.cs注冊相關的Page、ViewModel、Service

public partial class App
    {
        // The.NET Generic Host provides dependency injection, configuration, logging, and other services.
        // https://docs.microsoft.com/dotnet/core/extensions/generic-host
        // https://docs.microsoft.com/dotnet/core/extensions/dependency-injection
        // https://docs.microsoft.com/dotnet/core/extensions/configuration
        // https://docs.microsoft.com/dotnet/core/extensions/logging
        private static readonly IHost _host = Host
            .CreateDefaultBuilder()
            .ConfigureAppConfiguration(c => { c.SetBasePath(Path.GetDirectoryName(Assembly.GetEntryAssembly()!.Location)); })
            .ConfigureServices((context, services) =>
            {
                services.AddHostedService<ApplicationHostService>();

                services.AddSingleton<MainWindow>();
                services.AddSingleton<MainWindowViewModel>();
                services.AddSingleton<INavigationService, NavigationService>();
                services.AddSingleton<ISnackbarService, SnackbarService>();
                services.AddSingleton<IContentDialogService, ContentDialogService>();

                services.AddSingleton<DashboardPage>();
                services.AddSingleton<DashboardViewModel>();
                services.AddSingleton<DataPage>();
                services.AddSingleton<DataViewModel>();
                services.AddSingleton<SettingsPage>();
                services.AddSingleton<SettingsViewModel>();
            }).Build();

        /// <summary>
        /// Gets registered service.
        /// </summary>
        /// <typeparam name="T">Type of the service to get.</typeparam>
        /// <returns>Instance of the service or <see langword="null"/>.</returns>
        public static T GetService<T>()
            where T : class
        {
            return _host.Services.GetService(typeof(T)) as T;
        }

        /// <summary>
        /// Occurs when the application is loading.
        /// </summary>
        private void OnStartup(object sender, StartupEventArgs e)
        {
            _host.Start();
            Wpf.Ui.Appearance.Theme.Apply(Wpf.Ui.Appearance.ThemeType.Dark);
        }

        /// <summary>
        /// Occurs when the application is closing.
        /// </summary>
        private async void OnExit(object sender, ExitEventArgs e)
        {
            await _host.StopAsync();

            _host.Dispose();
        }

        /// <summary>
        /// Occurs when an exception is thrown by an application but not handled.
        /// </summary>
        private void OnDispatcherUnhandledException(object sender, DispatcherUnhandledExceptionEventArgs e)
        {

            // For more info see https://docs.microsoft.com/en-us/dotnet/api/system.windows.application.dispatcherunhandledexception?view=windowsdesktop-6.0
        }

4、MainWindow頁面進行主界面布局

這個代碼有點多就不粘了,文章結尾有源代碼下載,如果感興趣可以下載看看。

5、優點

  • 這個庫包含了一些常用的控件沒有過多的封裝(輕量級),但足夠一般應用場景使用
  • 包含了兩套皮膚(如果不滿意可以自定義樣式個性色調)
  • 沒有其它第三方的依賴,使用起來比較簡單
  • 使用官方Microsoft.Extensions.DependencyInjection作為依賴注入框架,也可以使用其他的
  • 沒有MVVM框架的限制,可以使用CommunityToolkit.Mvvm、Prism或其他的

再附上幾張效果圖:

責任編輯:姜華 來源: 今日頭條
相關推薦

2025-05-13 09:23:24

2025-10-21 08:57:00

2023-12-20 07:35:03

大模型數據治理機器學習

2009-09-07 23:09:17

2024-01-02 08:22:01

Koin框架項目

2023-11-16 13:24:39

OceanBase數據庫

2009-12-03 15:34:41

Suse Linux

2009-07-02 09:32:00

2009-08-17 22:32:25

IT運維管理監控運維一體化摩卡

2011-05-24 09:26:02

有線無線3G

2020-04-24 11:13:50

物聯網智慧社區技術

2017-05-16 10:46:06

博陽咨詢流程管理

2014-12-25 11:25:31

2009-02-06 14:12:00

數據中心機房

2023-06-28 08:16:50

Autofac應用程序

2014-10-14 10:45:18

用友

2009-03-19 09:50:00

華為機房一體化

2023-07-19 22:13:25

一體化推送平臺
點贊
收藏

51CTO技術棧公眾號

国产精品一区二区精品视频观看| 国产色视频一区| 国产日本一区二区三区| 天天躁夜夜躁狠狠是什么心态| 夜夜躁很很躁日日躁麻豆| 2020最新国产精品| 国产精品久久久久久亚洲毛片| 韩国欧美亚洲国产| www.日本久久| 日本中文字幕在线观看| 香蕉国产成人午夜av影院| 亚洲欧美电影一区二区| 国产精品扒开腿做爽爽爽的视频| 亚洲图片综合网| 国产理论电影在线| 国产精品69毛片高清亚洲| 日韩日本欧美亚洲| 国产精品自拍视频在线| 在线视频91p| 日本大胆欧美人术艺术动态| 亚洲女成人图区| 凹凸国产熟女精品视频| 无码精品一区二区三区在线 | 国产精品一区二区三区免费观看| 国产传媒国产传媒| 7m精品国产导航在线| 欧美亚洲免费在线一区| 日韩欧美激情一区二区| 日日夜夜操视频| 亚洲婷婷丁香| 91成人在线观看喷潮| 亚洲综合精品一区二区| 我要看黄色一级片| 欧美一级做a| 中文字幕亚洲在| 成人免费在线网址| wwwav国产| a看欧美黄色女同性恋| 亚洲线精品一区二区三区八戒| 高清不卡一区二区三区| 国产成人在线播放视频| 免费精品国产| 欧美日韩亚洲高清一区二区| 视频一区二区视频| 亚洲AV午夜精品| 中文亚洲字幕| 在线电影av不卡网址| 一本一道久久a久久综合蜜桃| 成视频免费观看在线看| 懂色av中文字幕一区二区三区| 国内自拍欧美激情| 亚洲成人黄色av| 日韩亚洲国产免费| 欧美日韩中文字幕一区| 亚洲综合在线网站| 3d成人动漫在线| 中文字幕欧美日本乱码一线二线| 成人网在线免费观看| 日本成人一级片| 欧美a级片一区| 亚洲精品一区二区三区婷婷月 | 婷婷丁香综合网| 国产精品免费精品自在线观看| 欧美熟乱第一页| 亚洲精品手机在线观看| 亚洲日本中文| 午夜精品久久久久久不卡8050| 日韩av一级大片| 狠狠色伊人亚洲综合网站l| 国产一区二区成人久久免费影院| 91国产视频在线播放| 战狼4完整免费观看在线播放版| 精品麻豆剧传媒av国产九九九| 日韩欧美一区二区三区| 中国一级黄色录像| 欧美欧美欧美| 国产精品一色哟哟哟| 国产成人aa精品一区在线播放| 久久久精品视频免费观看| 在线一级成人| 一区二区欧美在线| 色老板免费视频| 亚洲激情影院| 精品国产一区久久久| 国产制服丝袜在线| 天堂va欧美ⅴa亚洲va一国产| 一本久久a久久精品亚洲| 亚洲国产一二三精品无码| 国产在线观看黄| 国产精品伦理在线| wwwwww欧美| 久cao在线| 欧美激情在线看| 精品伊人久久大线蕉色首页| 国产日韩欧美一区二区东京热| 久久一综合视频| 午夜精品久久久久久久久久久久| 黄色在线视频网址| 亚洲清纯自拍| 国产精品人成电影| 成人免费一级片| 久久国产精品亚洲77777| 国内精品久久久久久久久| 国产污视频网站| 国产99一区视频免费| 日韩av电影免费播放| 欧美videosex性欧美黑吊| 自拍偷拍国产亚洲| 亚洲在线欧美| 亚洲天天影视| 天天av天天翘天天综合网色鬼国产| 国产精品乱人伦| 欧美一区视频在线| 国产亚洲精品久久久久久无几年桃| 97精品国产福利一区二区三区| 国产香蕉一区二区三区在线视频| 熟女俱乐部一区二区视频在线| 青青久久av| 亚洲欧美激情四射在线日| 人妻人人澡人人添人人爽| 久久久天天操| 国产精品三区www17con| 男人在线资源站| 国产精品福利影院| 黄色片久久久久| 韩国精品主播一区二区在线观看 | 日韩中文字幕在线观看视频| 亚洲电影成人| 97色在线观看免费视频| 99久久久无码国产精品免费| 国产婷婷一区二区| 日本最新一区二区三区视频观看| 后进极品白嫩翘臀在线播放| 欧美群妇大交群中文字幕| 欧美性猛交xxxx乱大交91| 国产一卡不卡| 精品国产一区二区三区久久久| 五月天激情国产综合婷婷婷| 成人av电影在线网| 久久久久久久久久久久久久一区| 欧洲毛片在线| 亚洲国产成人一区二区三区| 六月丁香婷婷激情| 国产精品一区二区三区美女| 亚洲欧美制服另类日韩| 欧美成人短视频| 亚洲欧美视频一区二区三区| 国产精品美女无圣光视频| 亚洲色图 校园春色| 午夜精品一区二区三区免费视频| www.四虎精品| 国产探花在线精品一区二区| 欧美在线视频免费观看| 在线免费看毛片| 中文字幕久久午夜不卡| 国产区二区三区| 一区二区三区自拍视频| 美女视频黄免费的亚洲男人天堂| 亚洲欧美在线视频免费| 成人美女视频在线观看18| 日本高清不卡一区二区三| 国产精品扒开做爽爽爽的视频 | 免费黄色一级网站| 国产精品一区二区av交换| 国产精品福利小视频| www.亚洲视频| 性做久久久久久久久| 污污污www精品国产网站| 亚洲片区在线| 日韩欧美精品一区二区| 日韩护士脚交太爽了| 久久婷婷国产麻豆91天堂| 国产婷婷97碰碰久久人人蜜臀| 人妻aⅴ无码一区二区三区| 日韩二区三区四区| 国产传媒欧美日韩| 国产伦理精品| 欧美一级欧美一级在线播放| 五月天综合视频| 青娱乐精品在线视频| 精品久久免费观看| 波多野结衣欧美| 国产成人精品av在线| 黄视频在线观看网站| 精品乱人伦小说| 精品在线观看一区| 国产精品白丝av| 波多野结衣家庭教师在线播放| 北岛玲精品视频在线观看| 欧美日韩国产成人| 一级黄色大片免费观看| www.一区二区| 最新av在线免费观看| aaa国产精品| 国产精品h在线观看| 69xxx在线| 91精品婷婷国产综合久久性色| 欧美激情久久久久久久| 99精品国产在热久久| 国产精品久久久久免费| 春暖花开亚洲一区二区三区| 日韩精品高清在线| jizz国产免费| 床上的激情91.| 久草在在线视频| 欧美三级免费| 亚洲在线第一页| 中文在线免费视频| 精品视频在线导航| 国产精品毛片一区二区在线看舒淇| 中文字幕高清不卡| 午夜福利三级理论电影| 日本欧美一区二区| 免费国产黄色网址| 任我爽精品视频在线播放| 国产日韩精品视频| 在线观看欧美日韩电影| 国产亚洲a∨片在线观看| а√中文在线资源库| 亚洲午夜免费电影| 久久久久亚洲AV成人无在| 99视频一区二区三区| 天美一区二区三区| 蜜桃av一区二区三区| 亚洲一区二区三区色| 亚洲盗摄视频| 国产精品久久7| 日韩欧美中文在线观看| 国产欧洲精品视频| 日本一道高清亚洲日美韩| 爽爽爽爽爽爽爽成人免费观看| 亚洲中文一区二区三区| 欧美性猛交xxxxx免费看| 日本少妇性高潮| 亚洲午夜久久久久久久久电影院 | 一区二区在线免费观看视频| 一区二区三区四区电影| 91在线精品观看| 欧亚在线中文字幕免费| 在线一区二区日韩| 国产精品女同一区二区| 欧美日韩小视频| 国产美女www| 91成人网在线| 最近中文字幕在线观看视频| 日本道精品一区二区三区| 91精品国产高清一区二区三密臀| 性感美女极品91精品| 国产网站在线看| 国产蜜臀av在线一区二区三区| 男女黄床上色视频| 久久99精品国产| 国产无限制自拍| 日韩在线观看| 国产伦精品一区二区三区四区免费 | 亚洲美女在线国产| 欧美成人一二三区| 亚洲一区国产视频| 亚洲欧美在线观看视频| 亚洲成人av一区二区| 受虐m奴xxx在线观看| 91在线观看免费视频| 福利片一区二区三区| 麻豆一区二区99久久久久| 久久久久久久香蕉| 亚洲国产清纯| 999香蕉视频| 欧美不卡视频| 日本人体一区二区| 国产免费成人| 不卡av免费在线| 激情文学综合插| 波多野结衣天堂| 久久精品99久久久| 亚洲 自拍 另类 欧美 丝袜| 久久狠狠婷婷| 九九九在线观看视频| 经典三级在线一区| 少妇伦子伦精品无吗| 26uuu亚洲综合色| 熟女人妻一区二区三区免费看| 成人午夜免费av| 加勒比一区二区| 国产精品久久久久久久裸模| 久久高清内射无套| 五月天亚洲精品| 中文字幕av影视| 日韩欧美成人免费视频| 中文字幕av片| 精品国产污污免费网站入口 | 天堂一区二区在线免费观看| 特级丰满少妇一级| 国产69精品久久777的优势| 大又大又粗又硬又爽少妇毛片| 国产精品福利电影一区二区三区四区 | 日韩影视高清在线观看| 日韩欧美一区二区三区四区| 日韩国产综合| 日韩网站在线免费观看| 欧美aaaaaa午夜精品| 亚洲麻豆一区二区三区| 国产成人av一区二区三区在线| 国产三级国产精品| 亚洲女同女同女同女同女同69| 少妇太紧太爽又黄又硬又爽| 91精品国产手机| 国产视频一二三四区| 日韩国产高清污视频在线观看| 毛片在线看网站| 全亚洲最色的网站在线观看| 免费观看亚洲视频大全| 五月天国产一区| 欧美日韩水蜜桃| 视频一区二区综合| 亚洲第一黄网| 在线免费黄色小视频| 国产高清在线精品| 国产熟女一区二区| 婷婷亚洲久悠悠色悠在线播放| 国产美女www爽爽爽视频| 亚洲美女激情视频| freexxx性亚洲精品| 欧美最顶级的aⅴ艳星| 欧美大片91| 亚洲午夜精品久久| 可以看av的网站久久看| 国产精品嫩草av| 久久久亚洲精品石原莉奈| av男人的天堂av| 欧美日韩激情网| 色老头在线视频| 亚洲精品久久久久久久久久久久| 青青免费在线视频| 操欧美女人视频| 日本黑人久久| 亚洲综合日本| 漂亮人妻被黑人久久精品| 亚洲综合色区另类av| 日本亚洲色大成网站www久久| 欧美高清你懂得| 成人午夜福利视频| 亚洲欧美日韩视频一区| 草草在线观看| 国产亚洲欧美另类一区二区三区| 国产精品久久| 成人亚洲视频在线观看| 26uuu亚洲| 免费看毛片网站| 亚洲一区二区久久久| 欧美日一区二区三区| 亚洲高清在线播放| 亚洲二区视频| 色综合久久五月| 黑人巨大精品欧美一区免费视频 | 亚洲欧美一区二区三区在线| 无码小电影在线观看网站免费| 蜜桃精品久久久久久久免费影院| 日韩精品免费一区二区在线观看| 久久久精品麻豆| 国产精品久久久久久久久搜平片| 国产美女裸体无遮挡免费视频| 久久精品视频亚洲| 亚洲精品午夜| 免费国产a级片| 国产视频亚洲色图| 国产又粗又猛视频免费| 久久不射电影网| 国产一级成人av| 成人午夜视频免费在线观看| 国产精品欧美精品| 国产日本精品视频| 97精品视频在线播放| 国产一区二区精品福利地址| 天天干天天草天天| 亚洲人成7777| 一区二区三区在线免费观看视频| 日韩在线欧美在线国产在线| 日本久久伊人| 日本在线观看a| 亚洲免费在线观看视频| 丰满岳乱妇国产精品一区| 奇米成人av国产一区二区三区| 91久久夜色精品国产按摩| 日韩精品国产一区| 色婷婷久久综合| 在线看福利影| 日本成人三级| 国产丶欧美丶日本不卡视频| 日本一区二区免费电影| 久久精品视频网站| 中文精品一区二区| xxxx视频在线观看| 色婷婷综合久久久中文一区二区 | 日韩av手机在线看| 国产欧美自拍一区| 中文字幕国内自拍| 亚洲国产精品久久久男人的天堂| 国产免费视频在线| 国产精品久久久久久久久久尿| 欧美jjzz|