.net WPF绑定相关资源问题

.net WPF绑定相关资源问题,.net,wpf,xaml,mvvm,.net,Wpf,Xaml,Mvvm,我使用FindAncestor和AncestorLevel=3来访问顶层标记,该标记应该有viewModel relay命令,但它不起作用。如果我做错了,有什么建议吗?或者有什么方法可以调试这个场景 <DataGridTemplateColumn.CellTemplate> <DataTemplate> <TextBlock Text="{Bind

我使用FindAncestor和AncestorLevel=3来访问顶层标记,该标记应该有viewModel relay命令,但它不起作用。如果我做错了,有什么建议吗?或者有什么方法可以调试这个场景

<DataGridTemplateColumn.CellTemplate>
                            <DataTemplate>
                                <TextBlock Text="{Binding name}" Cursor="Hand"
                                           Foreground="Blue" TextDecorations="Underline">
                                    <i:Interaction.Triggers>
                                        <i:EventTrigger EventName="MouseDown">
                                            <cmd:EventToCommand Command="{Binding NameClickCommand, RelativeSource={RelativeSource FindAncestor, AncestorType=Grid, AncestorLevel=3}}" 
                                                                MustToggleIsEnabled="True" PassEventArgsToCommand="True"/>
                                        </i:EventTrigger>
                                    </i:Interaction.Triggers>
                                </TextBlock>
                            </DataTemplate>
  </DataGridTemplateColumn.CellTemplate>

您正在寻找层次结构上的第三个
网格--
这就是您想要的吗


请注意,
Grid
不包括
DataGrid

似乎您正在将命令绑定到网格上名为NameClickCommand的属性。网格没有此属性,请尝试将其更改为

Command="{Binding Path=DataContext.NameClickCommand...

如果NameClickCommand位于网格的DataContext中

那么一些特定的代码如何,这样我们就不必使用我们的玻璃球了?快速查看xaml后的一种预感。您似乎正在将命令绑定到
网格上名为
NameClickCommand
的属性<代码>网格
没有此属性,请尝试将其更改为
命令=”{Binding Path=DataContext.NameClickCommand…
如果NameClickCommand位于Grid@Meleak你的答案成功了。你能把它作为一个答案贴出来让我接受吗?当然,我会把它改成一个答案:)是的,我只查找xaml文件的上一个父级,它是一个网格,在它的第三级。有没有指向ref的快捷方式如果我在这个Datagrid的同一级别添加一个按钮并将其命令设置为NameClickCommand,它就会工作。@11000011
..
{Binding DataContext.NameClickCommand,ElementName=rootGrid}