У меня есть иерархический TreeView WPF с TextBlock, чтобы показать мой список. Я хочу передать выбранное строковое значение в качестве параметра в мой ViewModel. Я использую MVVM.Как получить SelectedItem из TreeView?
Вот TreeView:
<TreeView ItemsSource="{Binding countryReportsHierarchy}">
<i:Interaction.Triggers>
<i:EventTrigger EventName="SelectedItemChanged">
<i:InvokeCommandAction Command="{Binding ArticleCategoryTitleSelectionChangedCommand}" />
</i:EventTrigger>
</i:Interaction.Triggers>
<TreeView.Resources>
<HierarchicalDataTemplate DataType="{x:Type t:CountryReportsHierarchy}"
ItemsSource="{Binding ArticleCategoriesHierarchyCollection}">
<TextBlock Text="{Binding Name}" />
</HierarchicalDataTemplate>
<HierarchicalDataTemplate DataType="{x:Type t:ArticleCategoriesHierarchy}"
ItemsSource="{Binding ArticleTypesHierarchyCollection}">
<TextBlock Text="{Binding Name}"/>
</HierarchicalDataTemplate>
<DataTemplate DataType="{x:Type t:ArticleTypesHierarchy}">
<TextBlock Text="{Binding ElementName= Name, Path=SelectedItem, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" >
</TextBlock>
</DataTemplate>
</TreeView.Resources>
</TreeView>
И часть Я пытаюсь получить выбранное значение из TextBlock от:
<TextBlock Text="{Binding Name}"/>
сковывает, как и следовало ожидать, очевидно, без выбранного значения. Есть ли способ передать выбранное значение TextBlock? Я пробовал следующее, но привязка не работает:
<TextBlock Text="{Binding ElementName= Name, Path=SelectedItem" />
не звучит правильно, покажите нам еще код – Muds
Вам нужен код TreeView? – Hardgraf
всего 2 шаблона данных, первый из которых показан здесь, закрыт в самой первой строке – Muds