WPF Prism 使用导航使用 ICollection 初始化选项卡
WPF Prism initializing tabs with ICollection using Navigation
我有一个选项卡视图模型,当您创建一个新选项卡时,它会生成一个新实例 Class B.
但是,程序有可能加载一个文件,该文件使用 JSON 获取 Class A 的实例,该实例具有 Class B 的集合。
如何使用 Class B 对象的现有集合实例化选项卡?最好还是使用 Navigation 而不是 View Injection/Discovery.
这是我添加新标签的代码
public void AddTabCommandAction()
{
_regionManager.RequestNavigate(RegionNames.TabRegion, "ClassBView");
}
还有我的 class B 视图模型。
public ClassBViewModel(ClassB b){
_b = b;
}
我正在使用 UnityContainer 来解析 ClassB 的类型。
可能不是最好的解决方案,但我通过使用导航日志解决了这个问题。
选项卡视图模型中的导航到方法
foreach (var item in list)
{
AddTabCommandAction(item);
}
将项目作为导航参数传入
选项卡视图模型的 OnNavigatedTo 方法
var classB= navigationContext.Parameters["ClassB"];
if (classB!= null)
_classB= (ClassB) classB;
我有一个选项卡视图模型,当您创建一个新选项卡时,它会生成一个新实例 Class B.
但是,程序有可能加载一个文件,该文件使用 JSON 获取 Class A 的实例,该实例具有 Class B 的集合。
如何使用 Class B 对象的现有集合实例化选项卡?最好还是使用 Navigation 而不是 View Injection/Discovery.
这是我添加新标签的代码
public void AddTabCommandAction()
{
_regionManager.RequestNavigate(RegionNames.TabRegion, "ClassBView");
}
还有我的 class B 视图模型。
public ClassBViewModel(ClassB b){
_b = b;
}
我正在使用 UnityContainer 来解析 ClassB 的类型。
可能不是最好的解决方案,但我通过使用导航日志解决了这个问题。
选项卡视图模型中的导航到方法
foreach (var item in list)
{
AddTabCommandAction(item);
}
将项目作为导航参数传入
选项卡视图模型的 OnNavigatedTo 方法
var classB= navigationContext.Parameters["ClassB"];
if (classB!= null)
_classB= (ClassB) classB;