Prism框架的用法
今天,我向大家介绍一款WPF后台框架,以及,它的用法。
官网
https://prismlibrary.com/
Prism 框架是一个用于构建松耦合、可维护且可测试的 WPF 和 Xamarin.Forms 应用程序的开源框架。在 Prism 中,IContainerRegistry 接口用于注册和解析应用程序中的依赖项,从而实现依赖注入和反转控制。
下面我将简要介绍 IContainerRegistry 中的一些常用方法以及它们表示的含义:
RegisterSingleton:用于注册一个单例对象,该对象将在整个应用程序的生命周期内保持唯一实例。当需要确保全局只有一个实例时,可以使用这个方法注册对象。
Register:用于注册一个类型和其相应的实现,每次解析时都会创建一个新的实例。这个方法适合于需要多个实例的场景。
RegisterManySingleton:用于注册多个实例,并且这些实例都是单例的。这个方法适用于需要管理多个单例对象的场景。
RegisterMany:用于注册多个实例,每次解析时都会创建一个新的实例。这个方法适用于需要多个实例且这些实例不需要保持单例的场景。
RegisterScoped:用于注册一个类型和其相应的实现,每个作用域(scope)内会保持同一个实例,但不同作用域之间的实例是独立的。这个方法适用于需要在特定作用域内共享实例的场景,比如在 Web 应用中的请求作用域内共享实例。
RegisterInstance:用于注册一个已经存在的实例对象。这个方法通常用于注册外部提供的对象,而不是由容器自己创建的对象。
RegisterDialog:用于注册一个对话框,通常用于在应用程序中显示对话框或者模态窗口。
RegisterForNavigation:用于注册一个视图或页面以便导航到该视图或页面。这个方法通常用于设置应用程序的导航关系。
Prism框架的用法的更多相关文章
- WPF Step By Step 系列-Prism框架在项目中使用
WPF Step By Step 系列-Prism框架在项目中使用 回顾 上一篇,我们介绍了关于控件模板的用法,本节我们将继续说明WPF更加实用的内容,在大型的项目中如何使用Prism框架,并给予Pr ...
- 项目中使用Prism框架
Prism框架在项目中使用 回顾 上一篇,我们介绍了关于控件模板的用法,本节我们将继续说明WPF更加实用的内容,在大型的项目中如何使用Prism框架,并给予Prism框架来构建基础的应用框架,并且 ...
- WPF Prism框架下基于MVVM模式的命令、绑定、事件
Prism框架下的自定义路由事件和命令绑定 BaseCode XAML代码: <Button x:Class="IM.UI.CommandEx.PrismCommandEx" ...
- 在Prism 框架中,实现主程序与模块间 UI 的通信
背景: 在模块的UI中包含 TreeView 控件,在该树形控件的每一节点前面定义了一个复选框,如图 需求: 在两个不同的应用程序中使用该控件,而它在不同应用程序中的外观则并不一致,按照本例,即一个显 ...
- Prism框架研究(一)
从今天起开始写一个Prism框架的学习博客,今天是第一篇,所以从最基本的一些概念开始学习这个基于MVVM的框架的学习,首先看一下Prism代表什么,这里引用一下比较官方的英文解释来看一下:Prism ...
- Prism框架中加载类库中时其中第三方类dll提示无法加载程序集
Prism框架是采用一种依赖注入的方式动态加载程序集,能够在程序需要加载的时候将程序集注入到里面去,实现程序的热插拔效果,而且采用这种框架能够让我们进行一个大项目的独立开发,在最近的一个项目中在独立开 ...
- Prism框架在项目中使用
本文大纲 1.Prism框架下载和说明 2.Prism项目预览及简单介绍. 3.Prism框架如何在项目中使用. Prism框架下载和说明 Prism框架是针对WPF和Silverlight的MVVM ...
- Prism框架的Module(模块化)编程
Prism框架用的是新版本的,Prism7.1.关于其中的变动,感兴趣的参考https://www.cnblogs.com/hicolin/p/8694892.html 如何告诉Shell(我们的宿主 ...
- Prism框架实战——订餐软件
参考B站刘铁猛老师的订餐软件https://www.bilibili.com/video/av29782724?from=search&seid=6787438911056306128 环境: ...
- Prism框架的Regions使用
Prism框架的Regions,可以把用户控件.窗体等附加到主窗体指定的控件中. [实战1] 1.新建Prism Blank App(WPF) 项目:Demo0810 Views文件夹处,鼠标右键—— ...
随机推荐
- ABC 314
F 每次相当于创建一个包含 \(p_i,q_i\) 各自所在集合的点的大点 \(u\),然后 \(u\) 向 \(p_i,q_i\) 各自所在集合连边,边权就是胜率. 连完之后求每个点到根结点(\(\ ...
- 使用memoizee缓存函数提升性能,竟引发了indexOf的性能问题
壹 ❀ 引 公司前端组基本每个月会举行一次前端月会,用于做前端组基础设施以及其它重要信息的同步,会议最后一个环节就会分享本月前端同学在开发中所遇到的奇怪bug,或者一些有趣的问题.在分享的问题中,我发 ...
- 【Android】使用BluetoothSocket实现跨设备通讯
1 前言 使用Socket实现跨设备通讯 中介绍了使用 WiFi 通道实现跨设备通讯,本文将介绍使用 Bluetooth 通道实现跨进程通讯. 本文全部代码见→使用BluetoothSocket实 ...
- Swoole从入门到入土(12)——HTTP服务器[Response]
继上一节了解完请求对象之后,这一节我们着重了解响应对象(Response).响应对象主要用于将数据发现到客户端.当 Response 对象销毁时,如果未调用 end 发送 HTTP 响应,底层会自动执 ...
- performance schema 性能模式
1.performance_schema简介 MySQL的performance schema 用于监控MySQL server在一个较低级别的运行过程中的资源消耗.资源等待等情况.performan ...
- springboot jpa自定义SQL查询
说明 在使用JPA实现数据持久化过程中经常会遇到这种情况:我有2张表是一对多的关系,需要通过一个外键ID去关联查询到另外一张表的字段.例如,1张商品表food_info其中存有商品分类ID categ ...
- oracle 游标变量ref cursor详解
一 介绍 像游标cursor一样,游标变量ref cursor指向指定查询结果集当前行.游标变量显得更加灵活因为其声明并不绑定指定查询. 其主要运用于PLSQL函数或存储过程以及其他编程语言 ...
- Java I/O 教程(四) FileInputStream 类
Java FileInputStream class 从一个文件读取字节数据. 用于从图像,音频,视频等文件中读取字节类型数据. 类定义 public class FileInputStream ex ...
- django中的Case,When,then用法
# 参考文档 https://docs.djangoproject.com/en/2.2/ref/models/conditional-expressions/ # Case()接受任意数量的When ...
- portainer docker可视化工具
下载可视化工具 docker pull portainer/portainer 启动portainer --restart=always 只要挂掉了 就自动重启 docker run -d -p 80 ...