我使用 Prism 和 MEF 创建了一个 WPF 应用程序。在一个模块中,我有一个客户列表。要编辑客户数据,我有一个视图“EditCustomer.xaml”。
用户可以编辑许多客户,因此他可以打开许多不同的 EditCustomer.xaml 实例。
这是 ViewModel 的代码:
[Export(typeof(EditCustomerViewModel))]
[PartCreationPolicy(CreationPolicy.NonShared)]
public class EditCustomerViewModel : ViewModelBase
XAML 的代码行为:
[Export(typeof(EditCustomerView))]
[PartCreationPolicy(CreationPolicy.NonShared)]
public partial class EditCustomerView : RadPane
{
public EditCustomerView()
{
InitializeComponent();
}
[Import(typeof(EditCustomerView))]
public object ViewModel
{
get
{
return this.DataContext;
}
set
{
this.DataContext = value;
}
}
}
“CreationPolicy.NonShared”属性完美运行,但是当我想绑定客户数据时,每个视图都与最后一个值绑定。我只想在新视图实例中加载和显示最新数据。
怎么可能?也许我忘记了什么?
在此先感谢您的帮助。
问候。