你好我们目前在找到ViewModel丢弃我的ObservableCollection的根本原因时遇到麻烦我在我的ViewModel中有这个代码:
public ObservableCollection<PersonData> _personData;
public ObservableCollection<PersonData> PersonData
{
get
{
if (_personData == null)
{
_personData = new ObservableCollection<PersonData>();
}
return _personData;
}
set
{
SetProperty(ref _personData, value);
}
}
如果_personData为null,则新的ObservableList被实例化,这是我唯一的实例化,没有别的。每当我离开或更改页面并返回列表视图时,该集合就会消失。有没有机会忘记删除或添加?我一直在问不同的论坛,但仍然没有正确的答案,我也尝试了许多我能想到但仍然没有进展的解决方案。有人可以帮帮我吗?
答案 0 :(得分:1)
如果你离开页面 - 这个带有相关viewmodel的页面应该被销毁 - 这就是你的ObservableCollection消失的原因。如果此页面是应用程序中“最常用”的页面,您可能会考虑制作ViewModel单例(最好通过某些服务定位器模式 - 请查看:MVVM - IOC Containers),以便在导航时不会清除它。