在带有分层数据模板的TreeView中的左键单击上突出显示我的选择

时间:2019-05-27 09:59:13

标签: wpf xaml mvvm treeview hierarchicaldatatemplate

我遇到了一个问题,我试图通过单击鼠标左键来关闭一个命令以打开一个选项卡。该选项卡可以很好地打开,但我希望树形视图导航栏中的选择突出显示或可视地选择。问题是命令“ Steals”是我的左键单击,因此从未选中。这是我的树的代码:

<TreeView Grid.Row="0" ItemsSource="{Binding TreeRoot}">

        <!-- Root template (Project name) -->
        <TreeView.ItemTemplate>
            <HierarchicalDataTemplate ItemsSource="{Binding ElementName=ParentControl, Path=DataContext.ConfigurationGroups}">

                <TextBlock Text="{Binding}"/>

                <!--ConfigurationGroups template-->
                <HierarchicalDataTemplate.ItemTemplate>
                    <HierarchicalDataTemplate ItemsSource="{Binding Configurations}">

                        <TextBlock Text="{Binding Name}"/>

                        <!--Configuration template-->
                        <HierarchicalDataTemplate.ItemTemplate>
                            <DataTemplate>
                                <Grid>
                                    <Grid.InputBindings>
                                        <MouseBinding Gesture="LeftClick"
                                                      Command="{Binding ElementName=ParentControl, Path=DataContext.SelectCurrentTabCommand}"
                                                      CommandParameter="{Binding}"/>
                                    </Grid.InputBindings>
                                    <TextBlock Text="{Binding Name}"/>
                                </Grid>

                            </DataTemplate>
                        </HierarchicalDataTemplate.ItemTemplate>

                    </HierarchicalDataTemplate>
                </HierarchicalDataTemplate.ItemTemplate>

            </HierarchicalDataTemplate>
        </TreeView.ItemTemplate>
    </TreeView>

链接到的ViewModel代码是带有get的中继命令。

有什么办法可以突出显示我从ViewModel中所做的选择?还是可以在“视图”中的命令上更改一些参数?

谢谢。

0 个答案:

没有答案