У меня проблема сортировки/привязки WPF. (Отказ от ответственности: Я очень новичок в WPF и привязки данных, так прошу прощения, если я задаю действительно тупой вопрос :-))WPF-привязка не уведомляет об изменениях
Во-первых, у меня есть LinqToSql сущность класс Contact
с EntitySet<Booking>
собственностью Бронирования на нем.
Если я напрямую связываю это свойство Bookings к ListView
, приложению, кажется, правильно извещать об изменениях выбранного элемента в ListView
, так что текстовое поле с {Binding Path=Bookings/Comments}
обновляет правильно.
// This code works, but Bookings is unsorted
var binding = new Binding();
binding.Source = contact.Bookings;
bookings.SetBinding(ItemsControl.ItemsSourceProperty, binding);
Однако, как я не могу быть в состоянии найти способ сортировки EntitySet (см this post), я пытаюсь связать вместо наблюдаемой коллекции, например:
// This code doesn't notify of selected item changes in the ListView
var binding = new Binding();
binding.Source = new ObservableCollection<Booking>(contact.Bookings.OrderByDescending(b => b.TravelDate).ToList());
bookings.SetBinding(ItemsControl.ItemsSourceProperty, binding);
Но это, похоже, не корректно уведомляет текстовое поле комментариев, чтобы оно обновлялось.
Если у кого-то есть решение для сортировки данных до или после его привязки или другого решения, которое будет работать, это было бы высоко оценено.
Спасибо, это сортирует в порядке, но он по-прежнему не уведомит выбранные изменения элементов для какой-либо причины. –