наличие иерархического шаблона данных для просмотра дерева WPF и настройки поведения для получения SelectedItem / SelectedItemName, когда пользователь нажимает на TreeViewItem.Примерно так:
<HierarchicalDataTemplate DataType="{x:Type model:ComponentList}" ItemsSource="{Binding ComponentItems}">
<StackPanel Orientation="Horizontal" Height="Auto" Margin="2">
<CheckBox Name="chk" IsChecked="{Binding Nxnavigatorchkbox, Mode=TwoWay}" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" >
<CheckBox.InputBindings>
<MouseBinding Command="{Binding Path=DataContext.SelectedNXCompChangedCommand, Source={x:Reference nxtreeview}}" MouseAction="LeftClick"/>
</CheckBox.InputBindings>
</CheckBox>
<TextBlock Text="{Binding Path=Displayname}" MinWidth="190" Style="{StaticResource TextBlockTreeView}">
</TextBlock>
</StackPanel>
</HierarchicalDataTemplate>
Часть поведения
<i:Interaction.Behaviors>
<local:BindableSelectedItemBehaviour SelectedItem="{Binding SelectedNXComponent, Mode=TwoWay}" SelectedItemName="{Binding SelectedNXNodeName, Mode=TwoWay}" />
</i:Interaction.Behaviors>
Теперь я запускал метод выбора / отмены выбора при выборе пользователем текстового блока в виде дерева.Это работало хорошо, когда я проверял, какой узел выбран пользователем, и выбирал дочерние узлы под ним.Но теперь пользователь хочет установить флажок и установить / снять флажки дочерних узлов.У меня есть метод для выбора на месте, но он, кажется, не работает, потому что выбор флажка не дает мне SelectedItemName.Есть ли способ, когда пользователь выбирает флажок, я получу DisplayName или любую другую информацию о текстовом блоке?