CollectionView без диспетчера
Мне нужно поведение сортировки, группировки и фильтрации CollectionView также со свойствами LiveShaping, но с каждой реализацией.NET связан Dispatcher.
Есть ли реализация ICollectionView без диспетчера?
2 ответа
Есть ли реализация ICollectionView без диспетчера?
Нет, нет Единственный класс, который реализует этот интерфейс в.NET Framework, это CollectionView
класс и это DispatcherObject
,
Таким образом, вам придется предоставить собственную реализацию или решить вашу проблему другим способом.
Из MSDN:
Примечания:
Интерфейс реализуется классом CollectionView, который является базовым классом для BindingListCollectionView, ListCollectionView и ItemCollection.
CollectionView происходит от System.Windows.Threading.DispatcherObject
, так что этот класс и все производные всегда будут иметь Dispatcher
собственность, потому что Dispatcher
собственность не virtual
, abstract
или же override
иначе вы могли бы пометить его как sealed
и использовать производный класс без Dispatcher
имущество.
Другое замечание для CollectionView:
Примечания:
Вы не должны создавать объекты этого класса в вашем коде. Чтобы создать представление коллекции для коллекции, которая реализует только IEnumerable, создайте объект CollectionViewSource, добавьте свою коллекцию в свойство Source и получите представление коллекции из свойства View.
Это не решение вашей проблемы, а ответ на ваш вопрос.