zoukankan      html  css  js  c++  java
  • WPF Caliburn 学习笔记(三)Application Model

    CaliburnApplication

    配置一:

    在前面,我们配置Caliburn容器时,是在App.xaml.cs中加了下面段代码:

    CaliburnFramework
        .ConfigureCore()
        .WithPresentationFramework()
        .Start();

    配置二:

    还有一种配置,使用Caliburn基类来配置,要修改的地方有App.xaml.cs和App.xaml
    public partial class App : CaliburnApplication
    {
        public App()
        {
            InitializeComponent();
        }
    }
    <cal:CaliburnApplication x:Class="YourProjectName.App"
                         xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
                         xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
                         xmlns:cal="http://www.caliburnproject.org">
    </cal:CaliburnApplication>
    这种效果相当于我们第一种的配置。
    Caliburn基类的配置可以保证我们能够正确运行。但如果我们要实现自定义配置的话。也许要重写下面几个方法:

    CreateContainer
    允许开发人员指定自己的IoC容器和配置合理。

    SelectAssemblies
    允许开发人员告诉Caliburn选择哪些程序集组件,视图,命令等

    ConfigurePresentationFramework
    使开发人员自定义常见的框架服务。

    ConfigureCaliburn
    使开发人员可以用自己的配置容器Caliburn的组成部分。 这仅仅是必要的,如果不实现容器适配器IConfigurator。

    Caliburn一些接口:

    IPresenter Component Model页面中介绍了一些接口和实现这些接口的类。

    角色                                             接口            实现接口的类

    Screen Activator(激活屏幕) |  IPresenter  | Presenter

    Screen Conductor(屏幕导航) |  IPresenterManager, INavigator    |   PresenterManager, Navigator

    Screen Collection(收集屏幕信息) | IPresenterHost  | MultiPresenterManager, MultiPresenter

    Application Controller(应用程序容器) |  IPresenterHost, IPresenterManager, INavigator  |  PresenterManager, Navigator, MultiPresenterManager, MultiPresenter

    未完成

    在Caliburn Application Model中有好多接口和策略模式,要结合LOB Samples这个实例看才可以。

  • 相关阅读:
    判断两个链表是否相交
    【转】TCP连接突然断开的处理方法
    【转】TCP/IP协议——ARP详解
    HTTP协议COOKIE和SESSION有什么区别
    【转】K-Means聚类算法原理及实现
    【转】机器学习实战之K-Means算法
    unity3d 调用Start 注意
    u3d 加载PNG做 UI图片
    Opengl的gl_NormalMatrix
    OpenGL 遮挡查询
  • 原文地址:https://www.cnblogs.com/dingli/p/1987652.html
Copyright © 2011-2022 走看看