在ViewModels之间共享状态

Gra*_*meF 3 silverlight wpf xaml mvvm

我有两个ViewModel,它们为不同的视图提供相同的模型.一个将模型显示为a中的项目ListBox,另一个将其显示为a中的选项卡TabControl.本TabControl是为那些在选定的项目显示选项卡ListBox,从而使标签来来去去,选择的变化.

我可以通过向IsSelectedModel 添加一个属性并将ViewModels绑定到它来轻松地同步这两个控件(有点像这样),但这会使模型与实际上不属于那里的演示细节混乱.

似乎我需要Model和ViewModels之间的东西来保持这个额外的状态.是否有任何好的方法可以做到这一点?

Gra*_*ury 9

使用ViewModel.

你有一个包含两个控件的视图.有一个视图模型,它将包含要绑定到的ListBox控件的ViewModel列表.同样在此视图模型中,将列表框选择绑定到TabControl随后也绑定到的第二个视图模型列表.

这样,您的列表框就会驱动选项卡控件显示的内容,而这些信息不会进入模型,而该模型应该忽略视图的存在.