我有一个带有一些文本列和一个按钮的 DataGrid。我想将按钮绑定到 ViewModel 上的命令。由于列在 ItemSource 的上下文中,我想将按钮的 DataContext 更改为 DataGrid 之外的内容(更改为视图模型,以访问命令),否则 Silverlight 无法找到该命令的绑定表达式在 ItemSource 上下文中。
这就是我正在做的事情,但我这样做没有成功。我不确定我在哪里犯了错误
<DataGrid >
...
<Button>
<i:Interaction.Triggers>
<i:EventTrigger EventName="Click">
<i:InvokeCommandAction Command="{Binding Path=DataContext.CommandToCall, ElementName=DataGridName}" />
</i:EventTrigger>
</i:Interaction.Triggers>
</Button>
...
</DataGrid>
执行此操作时我没有收到任何绑定错误,但我无法在我的 ViewModel 中调用该命令。请注意,它适用于 silverlight 而不是 WPF。谢谢