private void BindAddressesAndReservations() { ReservationsListView.DataSource = mgr.GetCustomerReservations(currentID); ReservationsListView.DataBind(); AddressesListView.DataSource = mgr.GetCustomerAddresses(currentID); AddressesListView.DataBind(); IsDataBound = true; }
//Binding all reservations into the Reservations Listview public async void BindDataToListView(String result) { try { reservationHeader = new List <ReservationHeader>(); //Clear the ListView ReservationsListView.ItemsSource = null; if (result.Contains("Enter your user ID in the format")) { await DisplayAlert(Constants._headerMessage, Constants._unableToGetHotelReservations, Constants._buttonOkay); } else { if (result != null) { //Solving Date Ticks erro result = result.Replace("Date(-", "Date("); var output = JObject.Parse(result); int cellColourCount = 1; //Setting initial colo Color temporary_status_color = Color.Gray; Color cellColour; Color textColor; string reservationImage = ""; string roomStatusImage = ""; string numberOfVisits = ""; string totalNumberOfVisits = ""; //Looping all Dat for (int i = 0; i < Enumerable.Count(output["d"]["results"]); i++) { //Checking reservation availabilit if (Enumerable.Count(output["d"]["results"][i]["ReservationNaviSapGuests"]["results"]) > 0) { numberOfVisits = Convert.ToString(output["d"]["results"][i]["ReservationNaviSapGuests"]["results"][0]["Visitperhotel"]).TrimStart(new Char[] { '0' }).Trim(); totalNumberOfVisits = Convert.ToString(output["d"]["results"][i]["ReservationNaviSapGuests"]["results"][0]["Totalvisit"]).TrimStart(new Char[] { '0' }).Trim(); reservationImage = reservationNaviAndNaviSapGuestDetails(output, cellColourCount, out temporary_status_color, out cellColour, out textColor, reservationImage, i); if (temporary_status != Constants._reservationStatusCancelled) { reservationHeader.Add(new ReservationHeader( Convert.ToString(output["d"]["results"][i]["XreservaId"]).TrimStart(new Char[] { '0' }), Convert.ToString(output["d"]["results"][i]["ReservationNaviSapGuests"]["results"][0]["McName1"]), Convert.ToString(output["d"]["results"][i]["Xclientname"]), temporary_status, temporary_status_color, cellColour, textColor, reservationImage, serviceDataValidation.roomNumberValidation(Convert.ToString(output["d"]["results"][i]["XhabitacionId"])), serviceDataValidation.roomImageValidation(Convert.ToString(output["d"]["results"][i]["XstdoLimpia"])), numberOfVisits, totalNumberOfVisits )); } } else if (Enumerable.Count(output["d"]["results"][i]["ReservationNaviGuest"]["results"]) > 0) { numberOfVisits = "0"; totalNumberOfVisits = "0"; reservationImage = reservationNaviAndNaviSapGuestDetails(output, cellColourCount, out temporary_status_color, out cellColour, out textColor, reservationImage, i); if (temporary_status != Constants._reservationStatusCancelled) { reservationHeader.Add(new ReservationHeader( Convert.ToString(output["d"]["results"][i]["XreservaId"]).TrimStart(new Char[] { '0' }), Convert.ToString(output["d"]["results"][i]["ReservationNaviGuest"]["results"][0]["Xnombre"]), Convert.ToString(output["d"]["results"][i]["Xclientname"]), temporary_status, temporary_status_color, cellColour, textColor, reservationImage, serviceDataValidation.roomNumberValidation(Convert.ToString(output["d"]["results"][i]["XhabitacionId"])), serviceDataValidation.roomImageValidation(Convert.ToString(output["d"]["results"][i]["XstdoLimpia"])), numberOfVisits, totalNumberOfVisits )); } } cellColourCount = cellColourCount + 1; } //Bind the Data to ListVie Device.BeginInvokeOnMainThread(() => { items = new ItemList(reservationHeader); ReservationsListView.ItemsSource = items.Items; ReservationsListViewNoItems.IsVisible = false; ListViewManualRefreshIcon.IsVisible = false; ReservationsListView.IsVisible = true; ChartModel.resCount = reservationHeader.Count; ChartModel.checkedinCount = reservationHeader.Count(x => x.Status == Constants._reservationStatusCheckedIn); ChartModel.pendingCount = reservationHeader.Count(x => x.Status == Constants._reservationStatusPending); MessagingCenter.Send <ReservationsList>(this, "chart"); }); hideLoading(); } else { //Reservation details not availabl ReservationsListViewNoItems.IsVisible = true; ListViewManualRefreshIcon.IsVisible = true; hideReservationList(); hideLoading(); } } //Hide Loading Message Device.BeginInvokeOnMainThread(() => { hideLoading(); }); //Finish Refreshing if (ReservationsListView.IsRefreshing) { ReservationsListView.EndRefresh(); } } catch (Exception e) { ReservationsListViewNoItems.IsVisible = true; ListViewManualRefreshIcon.IsVisible = true; hideReservationList(); hideLoading(); //Finish Refreshing if (ReservationsListView.IsRefreshing) { ReservationsListView.EndRefresh(); } } }