protected async override void OnStart () { base.OnStart (); if (EventData.Slots.Any ()) return; var loadingPage = new LoadingPage (); await loadingPage.Show(MainPage.Navigation); do { _errorMessage = null; await InitEventData (); if (_errorMessage != null) { await loadingPage.DisplayAlert ("Error", _errorMessage, "RETRY"); } } while (_errorMessage != null); // Carousel page needs to be constructed like this, // Databinding ItemSource didn't work at time of making _slotsPage.Title = EventData.EventName; _slotsPage.ItemsSource = EventData.Slots; _slotsPage.ItemTemplate = new DataTemplate(() => new TalksListPage()); await loadingPage.Hide(); }
protected async override void OnStart() { base.OnStart(); if (EventData.Slots.Any()) { return; } var loadingPage = new LoadingPage(); await loadingPage.Show(MainPage.Navigation); do { _errorMessage = null; await InitEventData(); if (_errorMessage != null) { await loadingPage.DisplayAlert("Error", _errorMessage, "RETRY"); } } while (_errorMessage != null); // Carousel page needs to be constructed like this, // Databinding ItemSource didn't work at time of making _slotsPage.Title = EventData.EventName; _slotsPage.ItemsSource = EventData.Slots; _slotsPage.ItemTemplate = new DataTemplate(() => new TalksListPage()); await loadingPage.Hide(); }