В каком месте я могу асинхронно загружать данные в модель представления только тогда, когда она построена?асинхронные методы не могут быть вызваны в конструкторе, в настоящее время я загружаю данные в событие OnAppearing (используя EventToCommand):
private async void OnLoadData()
{
DataLoaded = await LoadCategories("0") && await LoadCities() && await OnLoadAgreement();
//....
}
, но всякий раз, когда я открываю всплывающее окно, вызывается событие Appearing
Это не то, что я хочу или имею в виду.Я использую MVVMLight и регистрирую модель представления в классе ViewModelLocator:
public AddItemViewModel AddItem
{
get
{
return SimpleIoc.Default.GetInstance<AddItemViewModel>(AddItemPage);
}
}
public ViewModelLocator()
{
ServiceLocator.SetLocatorProvider(() => SimpleIoc.Default);
SimpleIoc.Default.Register<AddItemViewModel>();
}
Та же проблема применяется к команде CleanData, мне нужно, чтобы она вызывалась при исчезновении страницы (из точки конечного пользователявид) но он вызывается при закрытии всплывающего окна