Я получаю все в рассоле с TreeViews и User Controls; Я довольно новичок в WPF, поэтому извиняюсь заранее.WPF TreeView Selected Item и показ элементов управления пользователя
Синопсис
У меня есть коллекция классов VM для моих TreeView предметов. Таким образом, TreeView привязан к коллекции экземпляров [родительского] VM, каждый из которых имеет коллекцию [Child] ren, и каждый [Child] имеет другие данные и другие коллекции (которые я вам не буду с вами).
TreeView находится в левой части формы, а справа у меня есть пользовательский элемент управления, который должен отображаться только в зависимости от выбранного типа TreeViewItem.
Итак, если выбранный элемент TreeView имеет тип '[Child]', тогда элемент управления пользователя должен быть видимым.
Проблема
Я изо всех сил с тем, как определить, когда выбран элемент в TreeView, так что я могу показать/скрыть элемент управления пользователя.
Один из способов, которым я думал, но не нравится, - привязать свойство IsSelected к TreeViewItem к классу VM [Child], а затем поднять событие до главной виртуальной машины, , которая будет отображать/скрывать UC через DP. Но для этого требуется целая загрузка событий и т. Д., И для меня, кажется, беспорядочно.
Резюме
Для жизни меня я не могу работать, как сделать это, я должен быть уставшим или что-то ... или глупо ... или оба.
Все, что я хочу сделать, это выбрать элемент в TreeView и соответствующие дисплеи UserControl с соответствующими данными TreeViewItem, которые я мог бы в Windows Forms очень легко, но, очевидно, я не думаю об этом в очень WPF'ish путь на данный момент.
Любые ссылки на статьи и т. Д.
Большой размер груди для любых ответов.
Оооо! Удивительно, я не сталкивался с этим раньше - мне это нравится! – JustAPleb
Могу ли я добавить, что я пробовал это, и это работает как шарм, я также нашел эту ссылку полезной, если другие находятся в аналогичной позиции: http://tech.pro/tutorial/807/wpf-tutorial-how -в потребительной а-datatemplateselector. – JustAPleb