C# Xamarin Forms как правильно закрыть страницу если на ней выполняется задача
C# Xamarin forms Подскажите как правильно выйти из страницы если запущена задача. Пример условного кода.
включаем ActivityIndicator
bool DownloadDoc = await DownloadDocument("Путь к документу");
if (DownloadDoc) //True Успешно
{
//Код обработки результата
Например ListView.Add(Некий результат)//Но контрола уже нет
}
else
{
// код выхода
}
Суть такая. Нажимаем кнопку Скачать из инета документ. Но при этом не дожидаемся процесса скачивания. Закрываем страницу например кнопкой назад. Страница закрывается. Задача завершается и приложение просто закрывается. Самый простой и тупой метод это запретить действия во время скачивания. Светится ActivityIndicator и пока процесс не завершиться, сменить страницу нельзя. Так и сделано и работает. Но всетаки, как правильно закрыть страницу и остановить задачу,или проверить что страница закрыта в задаче и не продолжать ничего делать. Как это правильно обработать? Самое важное что сам код дожидается выполнения задачи чтобы что-то сделать потом.Например добавить результат в listview. Но он уже уничтожен так как c станицы ушли. Код условный. Это не значит что там только скачивание. Там могут быть и просто вычисления.
Спасибо.