我们致力于多代项目。在过去,只要对视图布局进行修改,我们就会创建该视图的一个版本并与ViewModel绑定,因此ViewModel将是一种版本化的版本。
现在让我们说一下,如果在视图中更改了规则集而不是View布局本身,当你拥有的只是一个视图时,你将如何与另一个版本的ViewModel绑定?
编辑:以下代码段可能有助于描述我的情况。
版本1.0.0开发
[Export]
[PartCreationPolicy(CreationPolicy.NonShared)]
public partial class V_Time : CCSUserControl
{
[ImportingConstructor]
public V_Time(IVM_Time viewModel)
{
this.DataContext = viewModel;
InitializeComponent();
}
}
将来要求更改布局时,我们会执行以下操作
[Export]
[PartCreationPolicy(CreationPolicy.NonShared)]
public partial class V_Time_1_2_0 : CCSUserControl
{
[ImportingConstructor]
public V_Time_1_2_0(IVM_Time_1_2_0 viewModel)
{
this.DataContext = viewModel;
InitializeComponent();
}
}
但我的问题是,我不打算创建一个新的xaml,因此也没有xaml.cs,但是我希望有另一个版本的ViewModel来处理请求,它要求反转启用/禁用规则。