public void RefreshView() { Root = new RootElement(model.SelectedCalendar?.Title ?? "No Default Calendar"); int sections = model.EventDates.Count; for (int i = 0; i < sections; i++) { var section = new Section(GetCaption(i)); DateTime date = model.EventDates.ElementAt(i); int sectionElements = model.eventDateToEventsDictionary [date].Count; for (int row = 0; row < sectionElements; row++) { var eventsWithStartDate = model.eventDateToEventsDictionary [date]; var evt = eventsWithStartDate.ElementAt(row); // Configure the cell. var dt = (DateTime)evt.StartDate; var local = TimeZone.CurrentTimeZone.ToLocalTime(dt); string votes = ""; if (model.AreNotesInteger(evt)) { votes = "Votes: " + evt.Notes; } var entry = new StyledStringElement(local.ToShortTimeString(), votes, UITableViewCellStyle.Value1); entry.Tapped += delegate { var controller = new EKEventViewController(); controller.Event = EventAtIndexPath(entry.IndexPath); controller.AllowsEditing = true; controller.Completed += (object sender, EKEventViewEventArgs e) => { model.FetchPokerEvents(); }; NavigationController.PushViewController(controller, true); }; entry.Accessory = UITableViewCellAccessory.DetailDisclosureButton; entry.AccessoryTapped += delegate { var ekevent = EventAtIndexPath(entry.IndexPath); model.IncreaseVoteOnEvent(ekevent); }; section.Add(entry); } Root.Add(section); } }
public void RefreshView () { Root = new RootElement (model.SelectedCalendar.Title); int sections = model.EventDates.Count; for (int i = 0; i < sections; i++) { var section = new Section (GetCaption (i)); DateTime date = model.EventDates.ElementAt (i); int sectionElements = model.eventDateToEventsDictionary [date].Count; for (int row = 0; row < sectionElements; row++) { var eventsWithStartDate = model.eventDateToEventsDictionary [date]; var evt = eventsWithStartDate.ElementAt (row); // Configure the cell. var dt = (DateTime) evt.StartDate; var local = TimeZone.CurrentTimeZone.ToLocalTime (dt); string votes = ""; if (model.AreNotesInteger (evt)) votes = "Votes: " + evt.Notes; var entry = new StyledStringElement (local.ToShortTimeString (), votes, UITableViewCellStyle.Value1); entry.Tapped += delegate { var controller = new EKEventViewController (); controller.Event = EventAtIndexPath (entry.IndexPath); controller.AllowsEditing = true; controller.Completed += (object sender, EKEventViewEventArgs e) => { model.FetchPokerEvents (); }; NavigationController.PushViewController (controller, true); }; entry.Accessory = UITableViewCellAccessory.DetailDisclosureButton; entry.AccessoryTapped += delegate { var ekevent = EventAtIndexPath (entry.IndexPath); model.IncreaseVoteOnEvent (ekevent); }; section.Add (entry); } Root.Add (section); } }