【发布时间】:2010-12-09 08:24:38
【问题描述】:
我在数据网格的第一列有按钮。我正在使用 MVVM 并尝试将命令绑定到 ViewModel 中的命令,但是当我单击每一行中的按钮时,它不起作用(它不会在 ViewModel 中调用命令)但是如果我将该按钮移出数据网格,它会正常工作。
如何从 MVVM 中数据网格内的按钮触发事件?
更新 1:
XAML 的代码是:
<datagrid:DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal"
VerticalAlignment="Center">
<Button x:Name="button" Content="View" Margin="5" DataContext="{StaticResource XDataContext}">
<i:Interaction.Triggers>
<i:EventTrigger EventName="Click">
<i:InvokeCommandAction Command="{Binding ViewOrganizationCommand}"
CommandParameter="{Binding ElementName=dtgOrganizations, Path=SelectedItem}" />
</i:EventTrigger>
</i:Interaction.Triggers>
</Button>
</StackPanel>
</DataTemplate>
</datagrid:DataGridTemplateColumn.CellTemplate>
ViewModel 的代码是:
public ViewModelCommand ViewOrganizationCommand { get; set; }
【问题讨论】:
-
查看您的 xaml 和 VM 代码会有所帮助。请添加。
-
按照您的建议添加源代码:)
-
您是否遇到任何绑定异常?您可以在“输出”窗口中看到它。
标签: silverlight mvvm