Im working on a xamarin project where you can toggle every object in the listview to show more information. So the toggle worked until I tried to sort the list after Id number. Do someone have a solution for this kind of problem?
Code for toggle:
public void ListView_ItemTapped(object sender, ItemTappedEventArgs e)
{
var vm = BindingContext as OrderViewModel;
var order = e.Item as Order;
vm.HideOrShowOrder(order);
}
//HideorshowOrder method code:
public void HideOrShowOrder(Order order)
{
order.isVisible = true;
UpdateOrder(order);
if (_oldOrder == order)
{
order.isVisible = !order.isVisible;
UpdateOrder(order);
}
else
{
if (_oldOrder != null)
{
_oldOrder.isVisible = false;
UpdateOrder(_oldOrder);
}
order.isVisible = true;
UpdateOrder(order);
}
_oldOrder = order;
}
//And the code for sorting the list:
public void sortedList()
{
var sortedList = App.Order.OrderList.OrderBy(i => i.Id).Reverse().ToList();
orderViewList.ItemsSource = sortedList;
}
orderViewList is the listView name in the XAML file. So the hideOrShow method doesn't get called and i don't know why?