Caliburn.Micro 杰的入门教程1(翻译)
Caliburn.Micro 杰的入门教程1(原创翻译)Caliburn.Micro 杰的入门教程2 ,了解Data Binding 和 Events(翻译)Caliburn.Micro 杰的入门教程3,事件和参数Caliburn.Micro 杰的入门教程4,事件聚合器Caliburn.Micro 杰的入门教程5,窗口管理器Caliburn.Micro 杰的入门教程6, Screens 和 Conductors 简介
Caliburn.Micro项目地址:
http://caliburnmicro.codeplex.com (旧)
https://github.com/Caliburn-Micro/Caliburn.Micro
【原文地址】Mindscape's Getting Started Tutorial
http://www.mindscapehq.com/blog/index.php/2012/01/12/caliburn-micro-part-1-getting-started/
备注:
Bootstrapper相关类和实现方式,在新版本有调整,继承BootstrapperBase基类,并在构造方法调用InitializeComponent(),新版本教程文档,请移步此处查看我后来翻译的文章。
Caliburn Micro Part 1: Getting Started
Step 1: Getting Started
Caliburn Micro 建立于 .NET framework 4.0 之上,所以需要在Visual Studio 2010中(或更高)创建应用程序,先要创建一个新的WPF应用程序并添加引用:【 Caliburn.Micro.dll 和 System.Windows.Interactivity.dll】,您可以从Caliburn Micro项目找到下载。
如果使用的是Visual Studio,推荐做法是使用Nuget安装Caliburn.Micro相关的包,如【Caliburn.Micro.Start】
在新建的WPF项目中,删除MainWindow.xaml项目文件。(也就是新建项目自带的主窗口)
在App.xaml项目文件中,删除 StartupUri 节点特性,如下:
<Application x:Class="CaliburnMicroApp.App"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<Application.Resources> </Application.Resources>
</Application>
此步骤是为了将初始化窗口重建,准备指向Caliburn Micro,而不是WPF自定义的,后面会有转移指向的步骤。
Step 2: The View Model
Caliburn Micro优化了View-Model-First方式,下一步就是添加一个类来表示视图模型了。大型应用程序可以有多个视图模型,每一种都可以有不同的逻辑视图。 下面是一个空视图模型的代码示例。 本教程是专注于简单的开始将Caliburn Micro纳入WPF应用程序中,我们现在暂时不让视图模型做什么(保持最简洁)。
using Caliburn.Micro; namespace CaliburnMicroApp
{
public class AppViewModel : PropertyChangedBase
{ }
}
首先要注意的是类的名称,Caliburn Micro默认有一个特定的命名约定,这样就可以关联匹配的视图和视图模型。所以,一个视图模型的类名应该以“ViewModel”结束,当然前面的名字就取决于你了。另一件要注意的是,这个类继承于PropertyChangedBase。 这是Caliburn Micro提供的,用于自动属性更改通知,所以我们不需要实现INotifyPropertyChanged。 尽管这个示例视图模型不做任何事情,我已经继承PropertyChangedBase并做好实现。 以后当给视图模型添加属性,将会派上用场。
Step 3: The View
为了显示窗口,我们需要创建一个视图,对应前面步骤中创建的视图模型。 只需要向项目添加一个新用户控件,如下所示。 再次指出,Caliburn Micro默认有特定的命名约定,这样就可以把视图对应到适当的视图模型。 视图名称应该与“View”结束并且开始部分要和对应的视图模型使用相同的名称。 对于我的例子,“AppView”视图对应“AppViewModel”。 下面的代码我也设置宽度,高度和网格背景,这样当您运行这个应用程序您可以看到它是否正常工作。
<UserControl x:Class="CaliburnMicroApp.AppView"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006">
<Grid Width="300" Height="300" Background="LightBlue"> </Grid>
</UserControl>
Step 4: The Bootstrapper
引导程序的机制用于CaliburnMicro合并到您的应用程序。 它也是让你可以为应用程序的需要,配置框架的地方。 对于本教程中,我使用了一个非常简单的引导程序实现所示:
using Caliburn.Micro; namespace CaliburnMicroApp
{
public class AppBootstrapper : Bootstrapper<AppViewModel>
{
}
}
CaliburnMicro有2个不同的bootstrappers可用。 上面使用允许设置你想要在启动时使用的视图模型的泛型类型。 最后一步就是告诉应用程序使用引导程序了。 是通过在xaml资源字典中添加你的引导程序做到的。 这样做之后,xaml会现在看起来是这样的:
<Application x:Class="CaliburnMicroApp.App"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:local="clr-namespace:CaliburnMicroApp"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<Application.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary>
<local:AppBootstrapper x:Key="bootstrapper" />
</ResourceDictionary>
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Application.Resources>
</Application>
现在,当您运行应用程序时,您将看到一个小窗口,一个淡蓝色背景。 您的应用程序现在已经做好了CaliburnMicro最基础的支持。
Caliburn.Micro 杰的入门教程1(翻译)的更多相关文章
- Caliburn.Micro 杰的入门教程2 ,了解Data Binding 和 Events(翻译)
Caliburn.Micro 杰的入门教程1(翻译)Caliburn.Micro 杰的入门教程2 ,了解Data Binding 和 Events(翻译)Caliburn.Micro 杰的入门教程3, ...
- Caliburn.Micro 杰的入门教程6, Screens 和 Conductors 简介
Caliburn.Micro 杰的入门教程1(翻译)Caliburn.Micro 杰的入门教程2 ,了解Data Binding 和 Events(翻译)Caliburn.Micro 杰的入门教程3, ...
- Caliburn.Micro 杰的入门教程5,Window Manager 窗口管理器
Caliburn.Micro 杰的入门教程1(翻译)Caliburn.Micro 杰的入门教程2 ,了解Data Binding 和 Events(翻译)Caliburn.Micro 杰的入门教程3, ...
- Caliburn.Micro 杰的入门教程4,事件聚合器
Caliburn.Micro 杰的入门教程1(原创翻译)Caliburn.Micro 杰的入门教程2 ,了解Data Binding 和 Events(原创翻译)Caliburn.Micro 杰的入门 ...
- Caliburn.Micro 杰的入门教程3,事件和参数
Caliburn.Micro 杰的入门教程1(翻译)Caliburn.Micro 杰的入门教程2 ,了解Data Binding 和 Events(翻译)Caliburn.Micro 杰的入门教程3, ...
- Superset 官方入门教程中文翻译
本文翻译自 Superset 的官方文档:Toturial - Creating your first dashboard 最新版本的 Superset 界面与功能上与文档中提到的会有些许出入,以实际 ...
- Kubernetes tutorial - K8S 官方入门教程 中文翻译
官方教程,共 6 个小节.每一小节的第一部分是知识讲解,第二部分是在线测试环境的入口. kubectl 的命令手册 原文地址 1 创建集群 1.1 使用 Minikube 创建集群 Kubernete ...
- AFNnetworking快速教程,官方入门教程译
AFNnetworking快速教程,官方入门教程译 分类: IOS2013-12-15 20:29 12489人阅读 评论(5) 收藏 举报 afnetworkingjsonios入门教程快速教程 A ...
- WPF/MVVM Quick Start Tutorial - WPF/MVVM 快速入门教程 -原文,翻译及一点自己的补充
转载自 https://www.codeproject.com/articles/165368/wpf-mvvm-quick-start-tutorial WPF/MVVM Quick Start T ...
随机推荐
- Jmeter(一)工具的简单介绍(z)
一.JMeter介绍 Apache JMeter是100%纯JAVA桌面应用程序,被设计为用于测试客户端/服务端结构的软件(例如web应用程序).它可以用来测试静态和动态资源的性能,例如:静态文件,J ...
- IntelliJ IDEA自动补全变量名称和属性名称的快捷键
自动补全变量名称 : Ctrl + Alt + v 自动补全属性名称 : Ctrl + Alt + f
- cin,get,getline
一.cin 1.cin使用空白(空格.制表符和换行符)来确定字符串结束的位置,并且对于换行符,cin会把换行符留在输入队列.cin读取字符串放到数组中,并自动在结尾添加空字符. 例如: ]; cin& ...
- 3.spring:自动装配/Bean之间的关系/作用域/外部文件/spel/
1.自动装配/手动装配 xml配置文件里的bean自动装配 Spring IOC 容器里可以自动的装配Bean,需要做的仅仅是在<bean>的autowire属性里面指定自动装配模式 -& ...
- angular.js和ionic框架搭建一个webApp
原文地址:http://www.jianshu.com/p/ea0dcf1d31c9
- Anaconda常用命令
conda版本: conda --version 环境信息: 激活环境后,conda info 查看环境已安装包: conda list 新建环境: conda create -n {NAME} [ ...
- 关于readonly的一些说明
readonly在代码中只能在字段初始化器和构造函数中赋值,并不是说readonly只能赋值一次,超出这个范围以后readonly就不能通过代码修改了,但是还是可以用反射来修改,readonly仅仅是 ...
- VS2008 工具栏CMFCToolBar的使用总结(转)
(一)自定义工具栏 自定义工具栏,分两种情况:一是直接添加工具栏,并自己绘制图标:二是,添加工具栏,然后与BMP关联,与VC6.0中的自定义彩色工具栏类似. 1. 自绘工具栏 1)添加Toolbar ...
- SVN 操作报错 “Previous operation has not finished; run 'cleanup' if it was interrupted“
今天在 通过 SVN 合并代码的时候报了如下的错误 ”Previous operation has not finished; run 'cleanup' if it was interrupted“ ...
- SpringBoot自动装配的原理
1.SpringApplication.run(AppConfig.class,args);执行流程中有refreshContext(context);这句话. 2.refreshContext(co ...