Я привязываю ItemsControl к CollectionViewSource. Вот код:
this.Trucks = new ObservableCollection<Truck>();
foreach (var truck in DataRepository.Trucks.Where(t => t.ReadyDate.Date.Equals(this.Date)))
{
this.Trucks.Add(truck);
}
this.TrucksSource = new CollectionViewSource { Source = this.Trucks };
this.TrucksSource.SortDescriptions.Add(new SortDescription("ReadyAddress.Region.RegionNumber", ListSortDirection.Ascending));
this.TrucksSource.SortDescriptions.Add(new SortDescription("TruckId", ListSortDirection.Ascending));
Когда я изначально связываю - сортировка работает. Когда я добавляю элемент в ObservableCollection - он вставлен в нужное место, это хорошо. Но когда я изменяю свойство, которое я сортирую - этот элемент не переводится в список.
ReadyAddress.Region.RegionNumber
правильно поднимает INotifyPropertyChanged, и я вижу его в связанных полях, но порядок не меняется. Ожидаю ли я чего-то, чего не должно быть, или есть лучший способ справиться с этим?