Почему элемент управления WPF TreeView наследуется от ItemsControl вместо Selector? - PullRequest
2 голосов
/ 04 августа 2011

Глядя на таблицу наследования для элементов управления WPF, я заметил нечто неожиданное для элемента управления TreeView. Другие элементы управления, которые позволяют выбор пользователя, наследуются от базового класса Selector или MultiSelector. Это имеет смысл, поскольку класс Selector добавляет возможности выбора к базовому классу ItemsControl. Поэтому я ожидал, что TreeView также наследует от того же класса, но это не так. Он наследуется от ItemsControl напрямую. Есть идеи почему?

1 Ответ

4 голосов
/ 04 августа 2011

Это потому, что выбор элементов дерева должен осуществляться по всей иерархии, а не только по элементам корневого уровня.Класс Selector отслеживает плоский список.Дело в том, что иерархическая структура должна трактоваться особым образом.

...