gpt4 book ai didi

prism - 如何在 Prism 的 Bootstrap 中获取 RegionManager

转载 作者:行者123 更新时间:2023-12-01 06:51:14 27 4
gpt4 key购买 nike

我在使用方法时遇到问题

this.regionManager.RegisterViewWithRegion("TextRegion", typeof(TextView));

如果我以某种方法在 Bootstrap 中编写上述代码。它不起作用,因为我无法从代码中获取 regionmanager 的对象
IRegionManager manager = this.Container.Resolve<IRegionManager>();

上面的代码抛出异常“异常消息是:当前构建操作(构建 key Build Key[Microsoft.Practices.Composite.Regions.IRegionManager, null])失败:当前类型,Microsoft.Practices.Composite.Regions.IRegionManager,是一个接口(interface),无法构造。你是不是缺少类型映射?”

但是上面的代码可以工作,我将它放入一些 ViewModel 并在其中注入(inject) IRegionManager。


 public HeaderControlViewModel(IEventAggregator aggregator, IRegionManager regionManager)
: base(aggregator)
{
this.regionManager = regionManager;
this.regionManager.RegisterViewWithRegion("TextRegion", typeof(TextView));
}

但我不想这样做。我希望一切都只配置 Bootstrap 。

请告诉我为什么 Bootstrap 无法获取 RegionManager 对象?我怎么解决这个问题?

提前谢谢了...

最佳答案

//...App.xaml.cs

   public partial class App : Application
{
protected override void OnStartup(StartupEventArgs e)
{
base.OnStartup(e);
Bootstrapper bs = new Bootstrapper();
bs.Run();
bs.ShowDefault();
}
}

//... Bootstrap .cs
public void ShowDefault()
{
RegionManager.GetRegionManager(Application.Current.MainWindow)
.RequestNavigate("MainRegion", "ViewA");
}

//...

关于prism - 如何在 Prism 的 Bootstrap 中获取 RegionManager,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8952628/

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