一、配置Prism基本环境。
1、基于.NET8 创建一个WPF项目。
2、通过NuGet安装Prism(9.0.537),如下图。
3、创建文件夹Views和ViewModels,如下图。
4、将将MainWindow.xaml移动到Views文件夹下,如上图。
4.1、MainWindow.xaml 需要修改x:Class="WpfApp1.MainWindow" 为x:Class="WpfApp1.Views.MainWindow"。
4.2、MainWindow.xaml.cs需要将namespace WpfApp1 修改为 namespace WpfApp1.Views。
4.3、Prism题外话,在不使用Prism的情况下,App.xaml中需要将StartupUri="MainWindow.xaml"修改为StartupUri="/Views/MainWindow.xaml"才能保证程序正常启动。
5、设置启动项
5.1、修改App.xaml代码如下。
<prism:PrismApplication x:Class="WpfApp1.App"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:WpfApp1"
xmlns:prism="http://prismlibrary.com/">
<Application.Resources>
</Application.Resources>
</prism:PrismApplication>
5.2、修改App.xaml.cs代码如下。
using System.Configuration;
using System.Data;
using System.Windows;
using WpfApp1.Views;
namespace WpfApp1
{
/// <summary>
/// Interaction logic for App.xaml
/// </summary>
public partial class App : PrismApplication
{
protected override void RegisterTypes(IContainerRegistry containerRegistry)
{
}
/// <summary>
/// 设置启动页
/// </summary>
/// <returns></returns>
protected override Window CreateShell()
{
return Container.Resolve<MainWindow>();
}
}
}
6、配置基本环境完成,程序可正常运行。
二、MVVM属性绑定。
1、修改MainWindowViewModel.cs代码如下。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace WpfApp1.ViewModels
{
public class MainWindowViewModel:BindableBase
{
private string _mvvmString="Hello Prism";
public string MVVMString
{
get { return _mvvmString; }
set { SetProperty(ref _mvvmString, value); }
//也可以使用另一种方式
//set { _mvvmString = value;RaisePropertyChanged(); }
}
}
}