小工具知识网

当前位置: 首页 > 行业知识 > Caliburn.Micro框架学习笔记——初始配置

行业知识

Caliburn.Micro框架学习笔记——初始配置

2026-11-16 04:58:31 来源:互联网转载

Caliburn.Micro是一个WPF的MVVM框架,官方介绍是“ 这个是用于创建各类型的XAML平台应用的精简而又强大的框架。强力支持MVVM类的模式,使你的项目更快的建立,并且不牺牲代码质量以及可测试性”。

MVVM介绍

Model View ViewModel这样一个三层的一个架构。就WPF而言,View表示的是Xaml层的视图表示层,ViewModel主要用来接收UI层过来的命令以及包含处理这些命令的逻辑。Model层表示的是数据实体,但是现在也有将数据实体再分一层为DTO层,主要用来做数据库的交互。

 已经有一些框架比如Prism等,那为什么要学习使用Caliburn.Micro这个框架?

这个框架宣称,它很灵活,同时能够使得命令不在UI层中进行控制而是直接在VM层中进行操作。剩下的,我们先看看它能够处理什么问题。

使用配置步骤

导入与架构

在nuget中引入Caliburn.Micro

 然后再vs2022中创建他的架构模式,

 配置启动项

Caliburn的逻辑是他有一个初始化启动文件,这个文件命名为Bootstrapper.cs,它是用来作为配置启动用的。

他的逻辑就是,一般wpf是从app.xaml中进行启动的,然后启动后的主页是系统默认的MainWindow.xaml。所以这里更改为Bootstrapper.cs用来配置启动。

在搞这个之前,我们先创建一个ShellView和一个ShellViewModel作为启动页面和启动页面的逻辑。其中这个ViewModel继承于

public class ShellViewModel: Conductor    {    }

然后他的View我们创建后,它内部的内容需要将其命名为x:Name="ActiveItem",这个是为了告诉这个框架,让他定位到他要显示的内容是什么。然后可以删除掉MainWindow.Xaml文件,这个根据自己需要更改。

创建后代码如下——

          

最后初始状态下的Bootstrapper代码为,其中该类继承自BootstrapperBase

public class Bootstrapper: BootstrapperBase{//构造函数public Bootstrapper()  {  Initialize();  }//重写startup方法,用来告诉框架启动页面是哪一个 protected override async void OnStartup(object sender, StartupEventArgs e)      {      await DisplayRootViewForAsync(typeof(ShellViewModel));      }}

然后修改app.xaml如下

                                                                                              

其中修改项为——》

           

               

                   

               

             

       

这个目的是让其找到Bootstrapper再通过其逻辑通过相应的ViewModel打开相对应的页面。

配置日志

日志的代码为Caliburn中所有,其中为

 public static void StartDebugLogger()   {   LogManager.GetLog = type => new DebugLog(type);   }

使用时,在Bootstrapper的构造函数中加入StartDebugLogger()即可。

上一篇:腾讯云服务器怎么分ip?

下一篇:解决Zotero翻译插件Zotero PDF Translate无法正常翻译(包括密钥设置)