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 簡介php


 Caliburn.Micro項目地址:html

http://caliburnmicro.codeplex.com (舊)git

https://github.com/Caliburn-Micro/Caliburn.Microgithub

【原文地址】Mindscape's Getting Started Tutorial
http://www.mindscapehq.com/blog/index.php/2012/01/12/caliburn-micro-part-1-getting-started/bootstrap


 備註:

Bootstrapper相關類和實現方式,在新版本有調整,繼承BootstrapperBase基類,並在構造方法調用InitializeComponent(),新版本教程文檔,請移步此處查看我後來翻譯的文章。app

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】spa

在新建的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最基礎的支持。

相關文章
相關標籤/搜索