Wpf 使用 Prism 实战开发Day01-CSDN博客

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6

一.开发环境准备

1. VisualStudio 2022

2. .NET SDK 7.0

3. Prism 版本 8.1.97

以上环境如有新的版本可自行选择安装新的版本为主

二.创建Wpf项目 

1.项目的名称:MyToDo

项目名称:这里只是记录学习所以随便命名都无所谓,只要觉得合理就行

2.打开NuGet,下载Prism 包

注意下载的包名是Prism.DryIoc。为什么不是Prism.xxx其他包而是Prism.DryIoc别问我我也不知道。我的目的是学会使用就OK.

3.修改App.xaml 入口文件

  1. 引入Prism 命名空间 xmlns:prism="http://prismlibrary.com/"
  2. 修改Application节点标签成 prism:PrismApplication
  3. 后台App.xaml.cs 文件继承的Application 也改成 PrismApplication
  4. 删除App.xaml 前端页中的 StartupUri="MainWindow.xaml"

修改后的 App.xaml 文件  

<prism:PrismApplication x:Class="MyToDo.App"
             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
             xmlns:local="clr-namespace:MyToDo"
             xmlns:prism="http://prismlibrary.com/">
    <Application.Resources>
         
    </Application.Resources>
</prism:PrismApplication>

 不要问为什么要这样改我真不知道。每个框架都有自己的约定按照这个套路来就好了!

     5. 修改App.xaml.cs 文件,必须要实现2个接口。如果不实现编译会报错。其他接口自行参考官网例程按需使用因为我现在也不会

  • CreateShell 方法创建启动页跟App.xaml 的StartupUi是一样的作用所以需要删掉App启动页不然启动运行会有2个主窗口。
  • RegisterTypes 方法用于注入一些服务。例如:数据库服务,其他接口服务等等.具体这个注册怎么个用法我现在也不懂在往后学习当中。先了解这2个方法作用。

修改后的 App.xaml.cs 文件

namespace MyToDo
{
    /// <summary>
    /// Interaction logic for App.xaml
    /// </summary>
    public partial class App : PrismApplication
    {
        /// <summary>
        /// 创建启动页面
        /// </summary>
        /// <returns></returns>
        protected override Window CreateShell()
        {
           return Container.Resolve<MainWindow>();
        }
        /// <summary>
        /// 依懒注入的方法
        /// </summary>
        /// <param name="containerRegistry"></param>
        protected override void RegisterTypes(IContainerRegistry containerRegistry)
        {
           
        }
    }
}

 4. 引入MaterialDesignThemes UI组件库 

  1. UI 组件库主要用来美化界面,类似前端开发使用一些UI库
  2. Material Design Themes UI仓库地址   打开WiKi
  •  NuGet 安装

  •  UI组件库安装完成后在App.xaml 文件中添加UI库命名空间并且引入UI库的资源文件

UI 库命名空间

xmlns:materialDesign="http://materialdesigninxaml.net/winfx/xaml/themes"

UI 库资源文件:

<Application.Resources>
    <ResourceDictionary>
        <ResourceDictionary.MergedDictionaries>
            <materialDesign:BundledTheme BaseTheme="Light" PrimaryColor="DeepPurple" SecondaryColor="Lime" />
            <ResourceDictionary Source="pack://application:,,,/MaterialDesignThemes.Wpf;component/Themes/MaterialDesignTheme.Defaults.xaml" />
        </ResourceDictionary.MergedDictionaries>
    </ResourceDictionary>
</Application.Resources>

UI库使用方式在git hub 仓库wiki都有说明.完成后以上方式后就能正常使用了。


 三.创建Web API 项目

Web API 项目主要是用于获取数据

1. 添加Web API 项目

 2.选择ASP.NET Core Web API

3.取消HTTPS 选项

主要原因是开发环境勾选上HTTPS到时候运行要提示你安装各种证书因为HTTPS 提供了加密通信和证书验证,并且要手动配置证书啥的开发环境这么搞就太麻烦了。大概就是这个意思。其他别问我也不懂百度大概是这么说的. 

 4.最终项目结构

  • Web Api 设置为启动项运行起来就是这个效果了


仅供自己学习记录不做任何教程提供不喜欢也请别喷我。这个是从b 站看视频学习wpf就想记录一下。写的水平有限也并不是写出来误导别人毕竟你有没有基础我不知道反正我看的懂就ok方便我以后用的上时可以回来翻下笔记。仅此而已!!!

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6