【Prism】MEF版HelloWorld】的更多相关文章

引言 Pirsm框架是由微软P & P小组设计的,用于构建组合式的WPF企业级应用,支持两个IOC容器,分别为Unity和MEF.官方地址为http://compositewpf.codeplex.com/,在上面可以有最新的源码和Demo,其中多数Demo都是用Unity容器构建的,而本人比较喜欢MEF,打算把Unity的Demo全部改成MEF的,先从HelloWorld开始吧. 模块HelloWorldModule 我们需要将HelloWorld.xaml先导出,,如下 [Export(&qu…
Shell框架XECA shell.xaml主要起到是一个容器或壳的作用 <Window x:Class="XECA.Shell"      xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"                xmlns:in…
引言 UIComposition原版Demo在PrismV5的解压包里面.原Demo用了.net4.5版本的DLL,我改成.net4.0的. RegionContext 这个Demo比之前那几个示例大概也只是多了一个新概念,那就是RegionContext. 众所周知,View的DataContext一般都是对应ViewModel,而Region很多时候也可以看成是一个View,所以Prism给了它一个RegionContext作为Region中多个子View的共享数据上下文. 一般用于Regi…
引言 第三弹是EventAggregation Demo的改造. EventAggregation  EventAggregation事件聚集是Prism框架中的通信实现.它可以在松散的模块或者窗体之间引发事件和传递参数,从而达到通信的目的.用法简单,完成三部曲即可. 1.继承CompositePresentationEvent<TPayload>,自定义事件类,如下 public class FundAddedEvent : CompositePresentationEvent<Fun…
引言 接下来的是Commanding Demo的改造. DelegateCommand    WPF本身提供了一个RoutedCommand,然而没什么卵用.在Prism框架中提供了个更人性化的ICommand的实现--DelegateCommand,如下 public class ArticleViewModel : NotificationObject { private readonly ICommand showArticleListCommand; public ArticleView…
对于Windows下的控制台编程,我相信很多人都不陌生.而C语言开始的著名的“Hello world”程序基本是学习编程的第一步.我想对于 RAD开发,大家熟悉的一般都是GUI编程,而对于console的编程基本很少用到.其实对于Delphi而言,不但可以开发GUI程序,而且也可以 开发console程序. 为什么要提到控制台程序呢,因为通过控制台程序你可以清晰的了解到一种编程语言运行的基本原理.Delphi也开发一样,我们不单单是 要知道点几下鼠标就能设置图形界面,但是程序运行的过程和基本原理…
菜单管控模块EntityFW 菜单的加载采用MEF技术,程序实现思路: 1 .主菜单加载页面MainMenuView.xaml指向MenuRegion 2. 菜单Item点击及内容加载,采用订阅模式,即菜单item点击时发布消息,shell负责订阅并过滤加载子模块 MainMenuView.xaml <UserControl x:Class="EntityFW.Views.MainMenuView"       xmlns="http://schemas.microso…
作者:the5fire | 标签: MVC  tornado  | 发布:2012-08-06 2:41 p.m. 文接上篇,看我一个简单的helloworld,虽然觉得这个框架着实精小,但是实际开发总不能这么用.所以还是应该按照实际开发来写一个helloworld. 既然是实际项目版的helloworld,那就要有组织结构,不能代码都塞在一个文件里. 大体结构如下: mvc_helloworld --__init__.py --urls.py --application.py --server…
第一步:构建一个名为Bootstrapper的类作为引导程序. class Bootstrapper : MefBootstrapper { } 第二步:在MainWindow窗体中添加一个CoontentControl控件作为模块的容器,并在后台代码中添加[Export]属性以便MEF可以注入. 窗体代码: <ContentControl prism:RegionManager.RegionName="MainRegion" /> 后台代码: using System.C…
跟学别的编程语言一样,Qt也不例外,一开始就想写一个helloworld.初学Qt十几天,看了一点关于Qt视频的介绍和书上的基础知识,对于Qt写工程的概念有了初步的认识,就代码的形式来说,Qt Creator可以让用户选择新建一个Gui项目和空的Qt项目.Gui项目从代码的形式上来看就跟C/C++多文件编译时差不多,分为一个类声明的.h文件.类函数实现的.cpp文件和主函数的.cpp文件,而且编译器根据我们创建项目时的选择和对于类名的命名给出了一些基本的代码框架.空的QT项目打开后就只有一个工程…