WPF框架Prism中View Injection用法介紹
View
View通常指的是, 我們定義的頁面, 而在模塊化的系統(tǒng)當(dāng)中, 我們往往稱之為用戶控件(UserControl)。
對于模塊化系統(tǒng)而言, 每個(gè)模塊當(dāng)中都有N個(gè)用戶控件組成, 然后模塊向區(qū)域當(dāng)中注冊視圖。
View Injection
在介紹Region章節(jié)當(dāng)中所講到, RegionManager的功能:
- 維護(hù)區(qū)域集合
- 提供對區(qū)域的訪問
- 合成視圖
- 區(qū)域?qū)Ш?/li>
- 定義區(qū)域
這意味著, 我們可以在模塊當(dāng)中為區(qū)域指定視圖, 這個(gè)時(shí)候,我們就可以通過依賴注入的方式,使用IRegionManager接口來向指定區(qū)域注冊視圖:
public class ModuleAModule : IModule
{
private readonly IRegionManager _regionManager;
public ModuleAModule(IRegionManager regionManager)
{
_regionManager = regionManager;
}
public void OnInitialized(IContainerProvider containerProvider)
{
_regionManager.RegisterViewWithRegion("ContentRegion", typeof(ViewA));
}
public void RegisterTypes(IContainerRegistry containerRegistry)
{
}
}當(dāng)啟動(dòng)頁當(dāng)中定義了ContentRegion區(qū)域的時(shí)候, 將呈現(xiàn)ViewA。
區(qū)域訪問
可以對已定義的區(qū)域進(jìn)行 Add / Remove/ Activate/ Deactivate 等操作。如下所示, 關(guān)于IRegion接口:

代碼定義如下所示:
Iregion region = _regionManager.Regions[“RegionName“]; region.Add(viewInstance); region.Remove(viewInstance); region.Activate(viewInstance); region.Deactivate(viewInstance);
到此這篇關(guān)于WPF框架Prism中View Injection用法介紹的文章就介紹到這了。希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
System.Diagnostics.Metrics .NET 6 全新指標(biāo)API講解
本文詳細(xì)講解了.NET 6全新指標(biāo)System.Diagnostics.Metrics,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-11-11
ASP.Net前臺(tái)調(diào)用后臺(tái)變量的方法
asp.net下前臺(tái)數(shù)據(jù)的調(diào)用輸出方法,需要的朋友可以參考下。2010-07-07
方法(Method)是一個(gè)已命名的語句集。如果以前使用過其他編程語言,如C或Visual Basic等,就可以將方法視為函數(shù)或者子程序相似的東西。每個(gè)方法都有一個(gè)名稱和一個(gè)主體。方法名應(yīng)該是一個(gè)有意義的標(biāo)識(shí)符,它應(yīng)描述出方法的用途(如CalculateIncomeTax)。方法主體包含了調(diào)用方法時(shí)實(shí)際執(zhí)行的語句。你可以為大多數(shù)方法提供一些數(shù)據(jù)來進(jìn)行處理,并讓它返回一些信息(通常是處理結(jié)果)。方法是一種基本的、功能強(qiáng)大的編程機(jī)制。2008-04-04
ASP.NET2.0+SQL Server2005構(gòu)建多層應(yīng)用
ASP.NET2.0+SQL Server2005構(gòu)建多層應(yīng)用...2006-12-12
.Net結(jié)構(gòu)型設(shè)計(jì)模式之橋接模式(Bridge)
這篇文章介紹了.Net結(jié)構(gòu)型設(shè)計(jì)模式之橋接模式(Bridge),文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-05-05
.Net中Task Parallel Library的基本用法
這篇文章介紹了.Net中Task Parallel Library的基本用法,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-10-10

