gpt4 book ai didi

c# - 导航以及如何在区域中注册 View ?

转载 作者:太空宇宙 更新时间:2023-11-03 23:19:27 25 4
gpt4 key购买 nike

我有两个 View ,我想在单击按钮时在它们之间导航,并且它们在模块初始化时注册到一个区域,如下所示:

public class ModuleTaxCalc : IModule //PRISM MODULE POWER
{
IUnityContainer container;
IRegionManager regionManager;


public ModuleTaxCalc(IUnityContainer container, IRegionManager regionManager)
{
this.container = container;
this.regionManager = regionManager;

}

public void Initialize()
{

container.RegisterType<ICustomer, Customer>();

//container.RegisterType<object, ViewA>("ViewA");
//container.RegisterType<object, ViewB>("ViewB");
regionManager.RegisterViewWithRegion("TaxCalculatorRegion", typeof(ViewA));
regionManager.RegisterViewWithRegion("TaxCalculatorRegion", typeof(ViewB));

}


}

我的问题是“ViewA”在应用程序启动时自动可见/

如果我这样做:

 public void Initialize()
{

container.RegisterType<object, ViewA>("ViewA");
container.RegisterType<object, ViewB>("ViewB");


}

然后两个 View 都是不可见的,只有在单击按钮时才可见,但我猜在这种情况下它们没有注册到该区域。

最佳答案

对于导航,您想要注册用于导航的 View ,然后导航到它们。

// register the view
container.RegisterTypeForNavigation<ViewA>();

// and some time later, show it in the region
regionManager.RequestNavigate( "TaxCalculatorRegion", "ViewA" );

如果您改为在区域中注册 View ,它将自动显示在该区域中( View 发现)。 Prism documentation 中提供了更多详细信息...

关于c# - 导航以及如何在区域中注册 View ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35914559/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com