基于MvvmCross 创建WPF项目

本项目基于 

MvvmCross 9.0.9

MvvmCross.Platforms.Wpf 9.0.9

1.首先创建类库

 2.安装NuGet包

 3.创建Services目录

 

4.创建ViewModels目录

5.创建 App.cs,代码如下

using MvvmCross;
using MvvmCross.ViewModels;
using MyTool.Core.Services;
using MyTool.Core.ViewModels;

namespace MyTool.Core
{
    public class App : MvxApplication
    {
        public override void Initialize()
        {
            Mvx.IoCProvider.RegisterType<ICalculationService, CalculationService>();

           RegisterAppStart<TipViewModel>();
        }
    }
}

5.创建WPF项目

6. 新建Setup.cs 文件,这里的Core.App为刚刚创建的Core项目中的App文件,而不是WPF中的App文件
 

using Microsoft.Extensions.Logging;
using MvvmCross.Platforms.Wpf.Core;
using Serilog;
using Serilog.Extensions.Logging;

namespace MyTool
{
    public class Setup : MvxWpfSetup<Core.App>
    {
        protected override ILoggerProvider CreateLogProvider()
        {
            return new SerilogLoggerProvider();
        }

        protected override ILoggerFactory CreateLogFactory()
        {
            // serilog configuration
            Log.Logger = new LoggerConfiguration()
                .MinimumLevel.Debug()
                .WriteTo.Trace()
                .CreateLogger();

            return new SerilogLoggerFactory();
        }
    }
}

7.修改App文件

using MvvmCross.Core;
using MvvmCross.Platforms.Wpf.Views;

namespace MyTool
{
    /// <summary>
    /// Interaction logic for App.xaml
    /// </summary>
    public partial class App : MvxApplication
    {
        protected override void RegisterSetup()
        {
            this.RegisterSetupType<Setup>();
        }


    }
}

8.修改App.xaml文件 修改app tag 为views:MvxApplication

<views:MvxApplication
    xmlns:views="clr-namespace:MvvmCross.Platforms.Wpf.Views;assembly=MvvmCross.Platforms.Wpf"
    x:Class="MyTool.App"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    StartupUri="Windows/MainWindow.xaml">
</views:MvxApplication>

9.上述基础搭建完成

代码参考 github:GitHub - moxi255/MyToolBase at master

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值