private void filterItemDeleteBtn_Clicked(object sender, EventArgs e)
 {
     var obj = (ImageButton)sender;
     filterFormat selectedfilter = obj.BindingContext as filterFormat;
     if(selectedfilter != null)
     {
         if (selectedfilter.type == "VehicleType")
         {
             VehicleFilter.vehicleTypes.Remove(selectedfilter.title);
         }
         if (selectedfilter.type == "VehicleMake")
         {
             VehicleFilter.vehicleMakes.Remove(selectedfilter.title);
         }
         if (selectedfilter.type == "VehicleModel")
         {
             VehicleFilter.vehicleModels.Remove(selectedfilter.title);
         }
         if (selectedfilter.type == "VehicleYear")
         {
             VehicleFilter.VehicleYear.Remove( Convert.ToInt32(selectedfilter.title));
         }
         if (selectedfilter.type == "VehicleColor")
         {
             VehicleFilter.Colors.Remove(selectedfilter.title);
         }
     }
     refreshVehicleList();
 }
        private void refreshVehicleList()
        {
            if (forlistViewItemSource != null)
            {
                if (forlistViewItemSource.Count > 0)
                {
                    forlistViewItemSourceWithFiter = new List<VehicleViewByTypeForMobile>();
                    forlistViewItemSourceWithFiter = forlistViewItemSource;
                    List<filterFormat> filterFormats = new List<filterFormat>();
                    if(VehicleFilter != null)
                    {
                        if (VehicleFilter.vehicleTypes != null)
                        {
                            if (VehicleFilter.vehicleTypes.Count > 0)
                            {
                                forlistViewItemSourceWithFiter = filterByVehicleType();
                            }
                            foreach (string s in VehicleFilter.vehicleTypes)
                            {
                                filterFormat filter = new filterFormat() { title = s, isAvailable = true, type = "VehicleType" };
                                filterFormats.Add(filter);
                            }
                        }
                        if (VehicleFilter.vehicleMakes != null)
                        {
                            if (VehicleFilter.vehicleMakes.Count > 0)
                            {
                                forlistViewItemSourceWithFiter = filterByVehicleMake();
                            }
                            foreach (string s in VehicleFilter.vehicleMakes)
                            {
                                filterFormat filter = new filterFormat() { title = s, isAvailable = true, type = "VehicleMake" };
                                filterFormats.Add(filter);
                            }
                        }
                        if (VehicleFilter.vehicleModels != null)
                        {
                            if (VehicleFilter.vehicleModels.Count > 0)
                            {
                                forlistViewItemSourceWithFiter = filterByVehicleModel();
                            }
                            foreach (string s in VehicleFilter.vehicleModels)
                            {
                                filterFormat filter = new filterFormat() { title = s, isAvailable = true, type = "VehicleModel" };
                                filterFormats.Add(filter);
                            }
                        }
                        if (VehicleFilter.VehicleYear != null)
                        {
                            if (VehicleFilter.VehicleYear.Count > 0)
                            {
                                forlistViewItemSourceWithFiter = filterByVehicleYear();
                            }
                            foreach (int s in VehicleFilter.VehicleYear)
                            {
                                filterFormat filter = new filterFormat() { title = s.ToString(), isAvailable = true, type = "VehicleYear" };
                                filterFormats.Add(filter);
                            }
                        }
                        if (VehicleFilter.Colors != null)
                        {
                            if (VehicleFilter.Colors.Count > 0)
                            {
                                forlistViewItemSourceWithFiter = filterByVehicleColor();
                            }
                            foreach (string s in VehicleFilter.Colors)
                            {
                                filterFormat filter = new filterFormat() { title = s, isAvailable = true, type = "VehicleColor" };
                                filterFormats.Add(filter);
                            }
                        }
                    }
                    if (lthSortbtn.IsChecked && forlistViewItemSourceWithFiter != null)
                    {
                        forlistViewItemSourceWithFiter=forlistViewItemSourceWithFiter.OrderBy(x => x.DailyRate).ToList();
                    }
                    if (htlSortbtn.IsChecked && forlistViewItemSourceWithFiter != null)
                    {
                        forlistViewItemSourceWithFiter=forlistViewItemSourceWithFiter.OrderByDescending(x => x.DailyRate).ToList();
                    }

                    //if (VehicleFilter.Price > 0)
                    //{
                    //    forlistViewItemSourceWithFiter = filterbyPrice();
                    //}
                    //if (VehicleFilter.MinPrice > 0)
                    //{
                    //    forlistViewItemSourceWithFiter = filterbyPriceMin();
                    //}
                    //if (VehicleFilter.VehicleType != null && forlistViewItemSourceWithFiter.Count > 0)
                    //{
                    //    forlistViewItemSourceWithFiter = filterByVehType();
                    //}

                    //if (VehicleFilter.seatsCount > 0 && forlistViewItemSourceWithFiter.Count > 0)
                    //{
                    //    forlistViewItemSourceWithFiter = filterbySeatCount();
                    //}
                    //if (VehicleFilter.buggageCount > 0 && forlistViewItemSourceWithFiter.Count > 0)
                    //{
                    //    forlistViewItemSourceWithFiter = filterbyBAgCount();
                    //}
                    //if (VehicleFilter.DoorsCount > 0 && forlistViewItemSourceWithFiter.Count > 0)
                    //{
                    //    forlistViewItemSourceWithFiter = filterbyDoorCount();
                    //}
                    //if (VehicleFilter.SortingOrder > -1 && forlistViewItemSourceWithFiter.Count > 0)
                    //{
                    //    forlistViewItemSourceWithFiter = filterbySortingOrder();
                    //}
                    if (filterFormats != null)
                    {
                        filterList.ItemsSource = null;
                        if (filterFormats.Count > 0)
                        {
                            filterList.ItemsSource = filterFormats;
                        }
                    }

                    if (forlistViewItemSourceWithFiter.Count > 0)
                    {
                        vehicleDetailList.ItemsSource = null;
                        vehicleDetailList.ItemsSource = forlistViewItemSourceWithFiter;
                        vehicleDetailList.HeightRequest = forlistViewItemSourceWithFiter.Count * 295;
                        noVehicleLabel.IsVisible = false;
                        filterbuttonGrid.IsVisible = true;
                        vehicleDetailList.IsVisible = true;
                        //VehicleFilter = null;
                        //VehicleFilter = new VehicleFilterSearch();
                    }
                    else
                    {
                        vehicleDetailList.IsVisible = false;
                        //noVehicleLabel.IsVisible = true;
                        // buttonGrid.IsVisible = true;
                        noVehicleLabel.IsVisible = true;
                        filterbuttonGrid.IsVisible = false;
                        //VehicleFilter = null;
                        //VehicleFilter = new VehicleFilterSearch();

                    }
                }
            }
        }