WPF框架Prism中View Injection用法介紹
View
View通常指的是, 我們定義的頁面, 而在模塊化的系統(tǒng)當中, 我們往往稱之為用戶控件(UserControl)。
對于模塊化系統(tǒng)而言, 每個模塊當中都有N個用戶控件組成, 然后模塊向區(qū)域當中注冊視圖。
View Injection
在介紹Region章節(jié)當中所講到, RegionManager的功能:
- 維護區(qū)域集合
- 提供對區(qū)域的訪問
- 合成視圖
- 區(qū)域?qū)Ш?/li>
- 定義區(qū)域
這意味著, 我們可以在模塊當中為區(qū)域指定視圖, 這個時候,我們就可以通過依賴注入的方式,使用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)
{
}
}當啟動頁當中定義了ContentRegion區(qū)域的時候, 將呈現(xiàn)ViewA。
區(qū)域訪問
可以對已定義的區(qū)域進行 Add / Remove/ Activate/ Deactivate 等操作。如下所示, 關于IRegion接口:

代碼定義如下所示:
Iregion region = _regionManager.Regions[“RegionName“]; region.Add(viewInstance); region.Remove(viewInstance); region.Activate(viewInstance); region.Deactivate(viewInstance);
到此這篇關于WPF框架Prism中View Injection用法介紹的文章就介紹到這了。希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
asp.net實例代碼protected override void Render(HtmlTextWriter wri
把最終要輸出的html壓縮后再輸出和最終輸出前先存為html文件,如果發(fā)布最新信息了,可以打開一次default.aspx,然后他又會生成一次html2008-08-08
Linux?CentOS下docker部署Asp.Net?Core(.Net6)
這篇文章介紹了Linux?CentOS下docker部署Asp.Net?Core(.Net6)的方法,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2021-12-12

