惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

T
Tenable Blog
S
SegmentFault 最新的问题
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
博客园 - 聂微东
罗磊的独立博客
MongoDB | Blog
MongoDB | Blog
美团技术团队
Recorded Future
Recorded Future
Microsoft Security Blog
Microsoft Security Blog
博客园 - 叶小钗
P
Proofpoint News Feed
aimingoo的专栏
aimingoo的专栏
博客园_首页
宝玉的分享
宝玉的分享
C
Check Point Blog
爱范儿
爱范儿
MyScale Blog
MyScale Blog
Microsoft Azure Blog
Microsoft Azure Blog
The Register - Security
The Register - Security
U
Unit 42
T
Tailwind CSS Blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
D
Docker
博客园 - Franky
博客园 - 【当耐特】
腾讯CDC
N
Netflix TechBlog - Medium
Jina AI
Jina AI
博客园 - 司徒正美
Last Week in AI
Last Week in AI
PCI Perspectives
PCI Perspectives
GbyAI
GbyAI
Security Archives - TechRepublic
Security Archives - TechRepublic
J
Java Code Geeks
Cloudbric
Cloudbric
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
Y
Y Combinator Blog
F
Full Disclosure
TaoSecurity Blog
TaoSecurity Blog
N
News and Events Feed by Topic
L
LINUX DO - 最新话题
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
小众软件
小众软件
O
OpenAI News
H
Hackread – Cybersecurity News, Data Breaches, AI and More
S
Security Affairs
Recent Announcements
Recent Announcements
Attack and Defense Labs
Attack and Defense Labs
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
S
Secure Thoughts

博客园 - zhaotianff

解决IIS服务器typecho上传附件后无法访问的问题 Visual Studio编译过程中拷贝文件的一些实用小技巧 Jenkins快速入门教程 .NET是什么?为什么要选择.NET? 如何在WPF中实现类似DevOps的自动化流程 一文带你搞懂医疗器械设计开发全生命周期 Windows如何清除本机记录的git用户名和密码 HL7协议详解 医疗行业 GDT 数据格式详解 一文带你搞懂C# 异步编程(async/await)底层原理 如何在C#中使用Chromium headless(无头模式)浏览器 不同.NET版本中的WPF新增功能 如何在WPF中使用 Fluent 主题 Windows平台下的各种原生UI框架介绍 C#如何Hook托管函数 WinDbg 用户层调试进阶教程 Windows编程的一些基础理论 推荐一款优秀的Windows经典文件管理器项目-WinFile Windows如何阻止应用程序联网 如何在WPF中捕获窗口外的事件 如何查看Windows进程的启动来源 Visual Studio 2026新解决方案格式slnx详解 我的微软MVP申请通过了 WPF MVVM实战系列教程(八、Prism DialogService, 对话框服务) WPF MVVM实战系列教程(七、Prism模块化) WPF 性能优化实战指南 WPF MVVM实战系列教程(六、Prism区域导航) WPF MVVM实战系列教程(五、Prism中的MVVM) WPF MVVM实战系列教程(四、Prism中的依赖注入) 微软 IDE 新纪元:Visual Studio 2026 初体验 Windows 7无法安装VMWare Tools的解决办法 WPF MVVM实战系列教程(三、创建Bootstrapper/启动器) WPF MVVM实战系列教程(一、Prism框架介绍)
WPF MVVM实战系列教程(二、使用Visual Studio 创建Prism项目)
zhaotianff · 2025-11-20 · via 博客园 - zhaotianff

使用Visual Studio 创建Prism项目

这里有两种方法

方法一、创建WPF工程,再引用nuget包

首先我们打开Visual Studio,创建一个WPF工程

image

然后添加Prism.WPF nuget

image

只需要添加这一个包即可,它会包含Prism.CorePrism.WPFMicrosoft.Xaml.Behaviors.WPF三个包

image

在后面我们会使用依赖注入,所以还需要安装一个Prism支持的DI容器框架。

这里我们使用Prism.Unity包。

注意:这里如果使用适配Prism的DI容器包,配置过程中会相对简单很多。例如Prism.Unity、Prism.DryIoc。

也可以自行替换Prism中自带的容器接口,使用Microsoft.Extensions.DependencyInjection、Autofac等三方框架。

image

这样我也们就得到了一个WPF Prism空项目

方法二、安装prism扩展

我们在菜单点,选择扩展-》管理扩展

image

搜索prism,然后在搜索的结果中安装Prism Template Pack

image

然后我们重新启动Visual Studio,系统会提示你安装扩展,点击 Modify 按钮开始安装,如下所示

image

可以看到Prism Template Pack提供了Prism空程序Prism完整程序Prism模块等项目选项。

我们这里选择创建一个Prism空程序,此时就可以得到一个Prism工程

image

 在创建的过程中,会让你选择使用的DI容器

image

创建完成后如下所示:

image

总结

这两种方法根据自身需求选择即可,没有硬性要求。

方法2就等于将方法1的过程全部变成自动化了,帮助我们搭建好了项目环境,如nuget包引用、ViewModel绑定、Bootstrapper(后面会介绍)等。

推荐在前期学习过程中,选择第一种方式,自己创建,这样才能帮助自己更好的理解整个项目结构。