WPF Treeview Элемент выберите Проблема - PullRequest
2 голосов
/ 25 июня 2009

alt text

У меня есть Treeview (как показано выше) в моем приложении, я связал его с коллекцией ... теперь проблема заключается в том, что всякий раз, когда я расширяю Colorodo по умолчанию Aspen должен быть выбран, это означает, что когда я расширяю первый элемент, Node должен быть выбран ..

Любые идеи / предложения, пожалуйста

Ответы [ 2 ]

6 голосов
/ 25 июня 2009

К сожалению, как я уверен, вы обнаружили, что вы не можете установить свойство treeViewInstance.SelectedItem только для чтения.

Из памяти каждый TreeViewItem имеет свойство IsSelected, которое вы можете установить . Вы пытаетесь прислушиваться к расширению / свертыванию элементов и, возможно, установить это свойство. Не пытаясь сделать это самостоятельно, я не знаю, если это а) хорошее решение б) если бы оно даже работало.

Чтобы получить TreeViewItem, который является контейнером для элемента в коллекции, используйте

treeViewInstance.ItemContainerGenerator.ContainerFromItem(yourDataItem) as TreeViewItem;

Другая идея (как я бы это сделал) - использовать ListBox / ListView и подделать иерархическое представление. Создайте контроллер модели представления и элемент, оберните свои данные и управляйте всем этим самостоятельно. Если вам нужна дополнительная информация, пожалуйста, оставьте комментарий, и я найду несколько примеров, чтобы помочь.

НТН,

Денис

0 голосов
/ 09 октября 2009

Есть два приспособления на выбор, что вам больше нравится. я) исследовать ItemTemplageSelector, не уверен, но может быть возможно работать с ним.

В других случаях при развертывании дерева или захвате мыши получают узел Current Root, а затем выбирают его первого дочернего элемента с индексом, подобным rootNode.child [0] ... установите для него значение Selected True или Isfocused, а операция perfom предназначена по ее щелчку вы заставите пользователя чувствовать, что он выбран.

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