Сортировка подэлементов TreeView в WPF при их редактировании - PullRequest
2 голосов
/ 23 августа 2011

У меня есть 2 уровня TreeView, который заполнен коллекцией элементов, у каждого из которых есть другая коллекция элементов.

class A
{
    public List<B> collection;
}

List<A> treeViewCollection;

Я использую ListCollectionView для сортировки этих элементов с помощью конвертера в случае коллекции внутри коллекции, как рекомендовано здесь:

Как отсортировать элементы TreeView, используя SortDescription в Xaml?

Проблема, которую я обнаружил, заключается в том, что ListCollectionView не обрабатывает элементы при их редактировании, поэтому я создал свой собственный класс ListCollectionView для присоединения к уведомлению свойства items. Чего я не знаю, что делать сейчас, когда я обнаружил, что элемент изменился, чтобы прибегнуть к ListCollectionView. Если я вызываю Refresh () в ListCollectionView, я теряю выделение в TreeView, я где-то видел, как вызывать функцию CollectionChangedNotification с действием Replace (и это звучит для меня неплохо), но это не влияет на TreeView.

Есть идеи, как обновить сортировку TreeView без потери всех выделенных элементов и расширенных элементов?

Спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...