Treeview -> Значение родительского узла - PullRequest
1 голос
/ 22 января 2009

Я новичок в мире WPF. У меня есть TreeView, который содержит

Treeview

Мандат ->

   Portfolio
           ---->portfolio1

Тесты

   Category
          ------>Name1  etc..

Я хотел бы знать, как получить значение родительского узла в WPF? Например, если я выбираю портфолио1, как получить значение родитель-родитель. В этом случае мандат.

Короче говоря, я хотел бы знать, должен ли пользователь щелкнуть Имя1 -> я должен получить контрольные отметки, а если пользователь нажмет на портфолио1, то я должен получить Портфолио.

Ваше руководство высоко ценится.

Спасибо, С уважением,

1 Ответ

5 голосов
/ 22 января 2009

Вы можете использовать VisualTreeHelper.GetParent для Name1, а затем его родителя.

Или вы можете делать это итеративно, пока не получите объект типа TreeViewItem, поэтому вам не придется обновлять код при изменении xaml.

Если вы сделаете это вторым способом, это будет выглядеть примерно так:

DependencyObject parent = VisualTreeHelper.GetParent(Name1);
while(!(parent is TreeViewItem))
    parent = VisualTreeHelper.GetParent(parent);
TreeViewItem item = (TreeViewItem) parent;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...