protected override async void OnAppearing() { base.OnAppearing(); if (isStarted) { return; } var items = await manager.GetSectionItems(); var cash = await manager.GetCashData(); //GetAllTimes var times = cash.Data.Speaches.Select(x => x.SpeachStartTime); var noDubles = ConferenceManager.RemoveDuplicates(times); //CreateVMs foreach (var item in items.Data) { var data = new List <Speach>(); foreach (var time in noDubles) { var speach = item.Speachs.FirstOrDefault(x => x.SpeachStartTime == time); if (speach != null) { data.Add(speach); } else { data.Add(new Speach { SpeachStartTime = time }); } } item.Speachs = data.ToArray(); var view = new SectionView(item, new Action <DateTime>((dt) => { StartDateTime = dt; })); views.Add(view); } isStarted = true; }