RequestNavigate我有很多痛苦。这是我的代码
public static void Navigate(this IRegionManager regionManager, Type type)
{
regionManager.RequestNavigate("MainRegion",
type.FullName,
result =>
{
});
}
在回调result.Error中为空。
RegionManager中的ActiveView数量正在正确更改。所需视图标记为活动。但在视觉上没有任何变化。
我在RequestNavigate
之前删除了所有视图 regionManager.Regions["MainRegion"].RemoveAll();
并获得了可视化更新,所以一切都正确注册,但我需要我的视图模型才能保持活力。
答案 0 :(得分:1)
如果您注册了与容器一起导航的视图类型:
public class ModuleAModule : IModule
{
IUnityContainer _container;
IRegionManager _regionManager;
public ModuleAModule(IUnityContainer container, IRegionManager regionManager)
{
_container = container;
_regionManager = regionManager;
}
public void Initialize()
{
_container.RegisterTypeForNavigation<ViewB>();
}
}
...你可以像这样导航到它:
public static void Navigate(this IRegionManager regionManager, Type type)
{
regionManager.RequestNavigate("MainRegion",
new Uri(type.Name, UriKind.Relative),
result =>
{
});
}