Prism框架-区域

一、区域:Region,和Navagation导航其实是一块用的

二、主要使用方法:主要是通过依赖注入的方法,将用户控件(UserControl控件)注册到系统中

三、分解步骤:

1.首先要在View界面中创建显示区域(导航区域),并命名;

 1 <ContentControl prism:RegionManager.RegionName="ContentRegion" /> 

2.在App.xmal.cs文件中注册,将区域注册到导航

1         protected override void RegisterTypes(IContainerRegistry containerRegistry)
2         {
3            containerRegistry.RegisterForNavigation<ViewA>();
4 }

3.在ViewModels中进行实现:一般用DelegateCommand及IRegionManager接口来实现

复制代码
 1         // 1. 定义一个IRegionManager类型的字段
 2         private readonly IRegionManager _regionManager;
 3 
 4         // 2. 定义一个NavigateCommand属性,类型为DelegateCommand<string>
 5         public DelegateCommand<string> NavigateCommand { get; private set; }
 6 
 7         public MainWindowViewModel(IRegionManager regionManager)
 8         {
 9             this._regionManager = regionManager;
10             NavigateCommand = new DelegateCommand<string>(Navigate);
11         }
12 
13         // 3. 定义一个Navigate方法,用于导航到指定的区域
14         private void Navigate(string regionName)
15         {
16             this._regionManager.Regions["ContentRegion"].RequestNavigate(regionName);
17         }
复制代码

 

这个地方回顾一下Prism框架实现命令和通知的方式

1.通知:使用vs的propfull添加,在set中添加RaisePropertyChanged()方法,Viewmodels要继承BindableBase类。

复制代码
 1         private string _Title;
 2 
 3         public string Title
 4         {
 5             get { return _Title; }
 6             set
 7             {
 8                 _Title = value;
 9                 RaisePropertyChanged();
10             }
11         }
复制代码

2.命令:使用DelegateCommand实现,上面已表述。

 

posted @   行走的小猫  阅读(5)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示