Prism8 for wpf学习笔记-Prism简介和安装

什么是Prism?

Prism 是一个框架,用于在 WPF 和 Xamarin Forms 中构建松散耦合、可维护和可测试的 XAML 应用程序。Prism 提供了一组设计模式的实现,这些模式有助于编写结构良好、可维护的 XAML 应用程序,包括 MVVM、依赖注入、命令、 EventAggregator 等,适合WPF中大型项目的开发。

Prism on Github

这里是Prism 在GitHub 的地址:https://github.com/PrismLibrary/Prism

Prism on Nuget

NuGet packages 安装prism

有这几个核心包,Prism.Core、 Prism.Wpf、Prism.Unity、Prism.DryIoc

主程序从Prism.Unity或Prism.DryIoc选个安装即可。

这里选Prism.Unity
在程序包管理控制台输入即可

Install-Package Prism.Unity -Version 8.1.97

下载并安装Prism

系统需求

  • .NET Framework 4.5 或更高版本
  • Visual Studio 2017 或更高版本

源码和示例

Prism 源代码和文档

WPF-Sample

安装生产力工具(可在了解prism基础组成后回退回来安装)

prism提供了一些便于开发的项目模块和代码片段

Prism Template Pack

要在 Visual Studio 2019 中安装,只需转到**Visual Studio -> Extensions -> ManageExtensions -> Online -> Visual Studio Marketplace**然后在在线图库中搜索“Prism Template Pack”:

在Visual Studio扩展管理安装
在这里插入图片描述

Snippets(代码片段)

在VS输入以下关键字后按2下Tab键可自动生成以下代码:

propp 具有支持字段的属性,取决于 BindableBase

private string _fieldName;
public string PropertyName
{
    
    
    get {
    
     return _fieldName; }
    set {
    
     SetProperty(ref _fieldName, value); }
}

cmd 创建一个通用的 DelegateCommand

输入cmd 后按2下Tab键可自动生成以下代码:

private DelegateCommand _fieldName;
public DelegateCommand CommandName =>
    _fieldName ?? (_fieldName = new DelegateCommand(ExecuteCommandName));

void ExecuteCommandName()
{
    
    

}

cmdfull - 使用 Execute 和 CanExecute 方法创建 DelegateCommand 属性

private DelegateCommand _fieldName;
public DelegateCommand CommandName =>
    _fieldName ?? (_fieldName = new DelegateCommand(ExecuteCommandName, CanExecuteCommandName));

void ExecuteCommandName()
{
    
    

}

bool CanExecuteCommandName()
{
    
    
    return true;
}

cmdg - 创建一个通用的 DelegateCommand

    private DelegateCommand<string> _fieldName;
    public DelegateCommand<string> CommandName =>
        _fieldName ?? (_fieldName = new DelegateCommand<string>(ExecuteCommandName));

void ExecuteCommandName(string parameter)
{
    
    

}

cmdgfull - 创建一个通用的 DelegateCommand 带有 Execute 和 CanExecute 方法的属性

private DelegateCommand<string> _fieldName;
public DelegateCommand<string> CommandName =>
    _fieldName ?? (_fieldName = new DelegateCommand<string>(ExecuteCommandName, CanExecuteCommandName));

void ExecuteCommandName(string parameter)
{
    
    

}

bool CanExecuteCommandName(string parameter)
{
    
    
    return true;
}

项目模板

  • Prism Blank App - 这是一个项目模板,本质上创建了一个新的 WPF shell
    应用程序。它将有一个基本的引导程序,负责初始化应用程序并显示外壳。它将有一个 MainWindow 和一个
    MainWindowViewModel 分别位于 Views 和 ViewModels 文件夹中。
  • Prism Module- 此项目模板将向您的解决方案添加一个新项目,该项目将充当 Prism 模块。它将定义一个实现 IModule的类,其中包含两个用于您的视图和视图模型的空文件夹。

后记

个人博客网站 https://onebyone.icu/

技术交流Q群: 1012481075 群内有各种流行书籍资料
在这里插入图片描述
在这里插入图片描述

文章后续会在公众号更新,微信搜索 OneByOneDotNet 即可关注。

你的一分鼓励,我的十分动力,点赞免费,感恩回馈,喜欢就点赞评论吧。

猜你喜欢

转载自blog.csdn.net/q913777031/article/details/119058805