Olá pessoal im atualmente tendo problemas em encontrar a causa raiz porque o ViewModel descarta meu ObservableCollection Eu tenho esse código no meu ViewModel:
public ObservableCollection<PersonData> _personData;
public ObservableCollection<PersonData> PersonData
{
get
{
if (_personData == null)
{
_personData = new ObservableCollection<PersonData>();
}
return _personData;
}
set
{
SetProperty(ref _personData, value);
}
}
se o _personData for nulo, uma nova ObservableListé instanciado, essa é a única instanciação que eu fiz, nada mais. e toda vez que eu navego ou troco páginas e volto ao listview a coleção desaparece. Existe alguma chance que eu tenha esquecido de remover ou adicionar? Eu tenho perguntado de diferentes fóruns, mas ainda não há resposta adequada, e também eu tentei muitas soluções que eu posso pensar, mas ainda não há progresso. Alguém por favor pode me ajudar?
Respostas:
1 para resposta № 1Se você sair da página - esta página comO viewmodel associado deve ser destruído - é por isso que o ObservableCollection desaparece. Se esta página for a mais usada no aplicativo, considere fazer o singleton do ViewModel (preferencialmente por algum padrão de localizador de serviço - veja isto: Contêineres MVVM - IOC) por isso não será limpo na navegação.