摘要:
背景 在上篇以及中篇的文章中我们介绍了Prism框架中整个Module的注册、发现、加载、初始化等过程,我们最终分析到了ModuleManager的Run方法,这个方法通过内部调用将所有加载到当前应用程序中的Module进行初始化并完成加载的过程,那么ModuleManager的Run方法又是被谁调 阅读全文
摘要:
背景 在上篇中我们主要介绍了Prism8中的IModuleInfo和IModuleCatalog接口,通过这两个接口使我们对Prism框架中的Module有一个比较大概的了解,今天这篇文章我们主要来看一下Prism8中的最重要的一个接口IModuleManager这个接口,这个接口对应的实现Modu 阅读全文
摘要:
概述 使用Prism框架开发WPF程序的时候非常重要的一个核心思想就是构建模块化的应用程序,模块与模块之间彼此互相解耦,模块之间可以松散组合,在对整个Prism中模块化设计思想有一个认识之前我们先来看看下面这张图,通过这张图从而让我们对整个Module有一个更加清晰的认识。 从上面的图中我们知道Mo 阅读全文
摘要:
#背景 我们知道在Prism框架中,框架中最重要的一个组件就是依赖注入框架,这个框架在一定程度上能够通过一个容器去管理整个框架中所有类的对象及生命周期,并且在引用的时候只需要通过注入接口框架就能够自动根据接口类型找到特定的实例,这个会省掉大量的创建对象操作,而且在在软件设计过程中通过IOC容器实现依 阅读全文
摘要:
#背景 在上篇中我们就Prism8.x版本中的事件聚合器EventAggregator中的最重要的EventBase进行了一个完整的讲述,并由此引申出EventBase中最重要的一个关联项EventSubscription,这篇文章我们将主要分析我们在实际使用的时候PubSubEvent以及Even 阅读全文
摘要:
#背景 从这篇文章开始我们来分析Prism框架中的事件聚合器EventAggregator,在开始这篇文章之前我们需要先申明这篇文章针对的是Prism8.x以及后续版本,应该在版本8以后针对这个事件聚合器做了BreakPoint,所以这里在开篇的时候需要特别的说明,如果需要了解之前的版本请参考之前写 阅读全文
摘要:
背景 IOC容器是构建一个应用程序非常重要的组成部分,在很多的IoC-Invertion of Control,即控制反转,是一种程序设计思想,在彻底了解Ioc容器之前我们先要来理解一些重要的一些概念,有了这些概念你才能对整个Ioc容器有一个非常清晰地认知。 先初步了解几个概念: 依赖(Depend 阅读全文
摘要:
背景 在C#中我们很多时候需要对一个对象进行深拷贝,当然如果已知当前对象类型的时候我们当然可以通过创建新对象逐一进行赋值的方式来进行操作,但是这种操作非常繁琐而且如果你在做一个顶层框架的时候要实现这样一个功能,并且深拷贝的方式复制的对象是一个object类型,这个时候这个方式就不再适用了,可能还有很 阅读全文
摘要:
背景 在很多时候我们需要用到WPF中的自定义控件,即我们想将一整套不同的控件组合成一个独立的控件并且定义在一个独立的自定义控件库中,这样整个控件就能够得到更好的封装和更好的独立性并且在定义的时候有更大的灵活性,在这篇文章中我已ItemsControl作为主体通过扩展其ItemsPanel和ItemC 阅读全文
摘要:
背景 在上篇中我们定义了两种通信协议基础的配置以及创建连接、重连机制、发送数据等等过程,在这篇文章中我们将重点来描述整个数据接收的过程,这个也是整个通信框架中非常重要的一个部分,在分析完整个过程后,本篇文章将贴出Communicator类的完整源码供分析文章使用。 接收过程 1.1 接收数据 我们先 阅读全文