csharpshare.com
Show / Hide Table of Contents

生产工具

Gitee仓库 Prism-Documentation-CH 时间 2023-1-16

现在Prism已经在Viusl Studio和Visual Studio for Mac上进行了集成,实现了在创建WPF、UWP和使用Xamarin.Forms原生IOS和安卓应用时的一个高效的开发者工作流。从而通过代码片段、项模板和项目模板在你选择的IDE中快速启动你的Prism应用。

可用工具:

  • Prism Template Pack
  • Prism Template Studio
  • Prism Extensibility Pack

Prism Template Pack

Prism Template Pack中包含了一系列用于创建使用Prism开发WPF和Xamarin.Forms应用的代码片段、项模块和项目模板。

代码片段

  • propp - 属性,有一个幕后字段,基于BindableBase
    private string _fieldName;
    public string PropertyName
    {
        get { return _fieldName; }
        set { SetProperty(ref _fieldName, value); }
    }
  • cmd - 创建一个DelegateCommand类型的属性,拥有Execute方法
    private DelegateCommand _fieldName;
    public DelegateCommand CommandName =>
        _fieldName ?? (_fieldName = new DelegateCommand(ExecuteCommandName));

    void ExecuteCommandName()
    {

    }
  • cmdfull - 创建一个DelegateCommand类型的属性,拥有Execute和CanExecute方法
    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 ViewModel - 派生于BindableBase以及拥有一个默认的构造函数的ViewModel类

WPF

  • Prism UserControl - 带有ViewModel的UserControl类
  • Prism Window - 带有ViewModel的Window类

Xamarin.Forms

  • Prism ContentPage - 带有ViewModel和自动注册的ContentPage
  • Prism NavigationPage - 带有ViewModel和自动注册的NavigationPage
  • Prism MasterDetailPage - 带有ViewModel和自动注册的MasterDetailPage
  • Prism TabbedPage - 带有ViewModel和自动注册的TabbedPage
  • Prism CarouselPage - 带有ViewModel和自动注册的CarouselPage

项目模板

WPF

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

使用新的WPF项目向导来选择你的容器,你将不再担心如何引用到正确的Nuget包。

WPF项目向导

Xamarin.Forms

  • Prism Blank App - 此项目模板会创建一个.NET Standard Xamarin.Forms应用并带有4个项目,分别为用于共享代码的.NET Standard项目、一个IOS应用程序、一个安卓应用程序和UWP应用程序。
  • Prism Module - 此项目模板将向您的解决方案中添加一个充当Prism模块的新项目。它会定义一个实现IModule的类,其中有两个空文件夹用于你的Views和ViewModels。它会有一个名为ViewA的默认视图,以及一个在IModule类中容器注册的名为ViewAViewModel的类。

厌烦了创建所有可用的Xamarin.Forms平台项目吗?现在您可以使用新的Xamarin.Forms项目向导只选择您关心的项目。

Xamarin.Forms项目向导

在Visual Studio上安装

Prism模板包可以在Visual Studio Gallery上找到。要在Visual Studio 2019中安装,只需要转到Visual Studio -> Extensions -> ManageExtensions -> Online -> Visual Studio Marketplace,然后在联机库中搜“Prism Template Pack”:

Prism Template Pack

Prism Template Studio

Prism Template Studio包含一系列的代码段、项目模板和项目模板,用于在Visual Studio for Mac中的采用了Prism库的Xamarin应用程序中使用。

[!警告] 目前Prism Template Studio for Visual Studio Mac在Visual Studio Mac 8.X上还不稳定,目前还在努力更新这一版本。当前已经在Windows版本的Visual Studio上提供了完整的功能,然而它只有在GitHub上赞助Dan的用户可以使用。

Snippets

  • propp - 属性,有一个幕后字段,基于BindableBase
    private string _fieldName;
    public string PropertyName
    {
        get { return _fieldName; }
        set { SetProperty(ref _fieldName, value); }
    }
  • cmd - 创建一个DelegateCommand类型的属性,拥有Execute方法
    private DelegateCommand _fieldName;
    public DelegateCommand CommandName =>
        _fieldName ?? (_fieldName = new DelegateCommand(ExecuteCommandName));

    void ExecuteCommandName()
    {

    }
  • cmdfull - 创建一个DelegateCommand类型的属性,拥有Execute和CanExecute方法
    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;
    }

项模板

TODO

项目模板

  • Blank Prism Application - 此项目模板会创建一个.NET Standard Xamarin.Forms应用并带有3个项目,分别为用于共享代码的.NET Standard项目、一个IOS应用程序和一个安卓应用程序。 Blank Prism Application

  • QuickStart Blank Prism Application - 此模板允许您为IOS和Android创建Xamarin.Forms应用程序,与Visual Studio for Windows template非常相似,但添加了PropertyChanged.Fody、启动图标资源、IDE配置和UI测试选项。 QuickStart Prism Application

  • QuickStart Prism Application - 此模板为创建Prism应用程序提供了一个可定制的模板,其中安装了很多通用的工具,例如类似Fody的MVVM帮助类、本地化、条形码扫描器和数据提供商的后端(Azure、Realm等) QuickStart Prism Application

[!提示] 此模板需要为AppCenter和Azure Devops (VSTS)设置CI/CD。首先,进入App Center和Azure DevOps来设置你的应用程序。然后通过Help -> AppCenter Configurations在Visual Studio for Mac中创建与应用程序的连接。 QuickStart Prism Application 快速入门教程可以在这里找到。

  • Module - 此项目模板将向您的解决方案中添加一个充当Prism模块的新项目。它会定义一个实现IModule的类,其中有两个空文件夹用于你的Views和ViewModels。
  • Test - 包含Appium和Xamarin UI测试的模板,以及MS test、NUnit和Xunit中的单元测试。

在Visual Studio for Mac安装

Prism Template Studio和开发者工具已可以从Visual Studio for Mac扩展库中获得。Prism也让用户很容易从同一扩展中获得Prism Template Studio和开发者工具,进入Visual Studio -> Extensions...,然后在Gallery选项卡中搜索“Prism”既可。

VS4Mac Prism Extension

本文导航
返回顶部 ©2022-2023 csharpshare.com    冀ICP备2022026743号-1     公安备案图标 冀公网安备 13052902000206号     Icons by Icons8