我在xaml中声明了一个datagrid,如下所示:
<sdk:DataGrid x:Name="ProductsForProjectDataGrid" AutoGenerateColumns="True" ItemsSource="{Binding Path=Products.ProductsForProject}">
<sdk:DataGrid.Columns>
<sdk:DataGridTemplateColumn x:Name="DeleteTemplate" Width="10*">
<sdk:DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<Button x:Name="DeleteProductButton" Command="{Binding DeleteProductCommand}" CommandParameter="Products.SelectedProduct" >
<Button.Content>
<Image x:Name="DeleteProductImage" Visibility="Visible" Height="20" Source="C:\Documents and Settings\DELETE.GIF" Width="20"/>
</Button.Content>
</Button>
</DataTemplate>
</sdk:DataGridTemplateColumn.CellTemplate>
</sdk:DataGridTemplateColumn>
<sdk:DataGridTextColumn Binding="{Binding Product}" Header="Product Name" IsReadOnly="True" Width="40*"/>
</sdk:DataGrid.Columns>
</sdk:DataGrid>
并且在viewModel中我将按钮链接到命令,我可以使用它来获取对datagrid的引用,
_dlgProducts.ProductsForProjectDataGrid
其中_dlgproducts是对象, 现在我怎样才能获得对删除按钮的引用, 一旦我得到参考,我可以绑定命令, 我需要像
这样的东西_dlgProducts.ProductsForProjectDataGrid.DeleteProductButton
或其他什么,我不知道如何得到它......
谢谢:)
答案 0 :(得分:1)
Silverlight中DataTemplate
内DataGrid
内的绑定无法正常工作。您需要使用DataContextProxy
。请参见此处的示例:
答案 1 :(得分:0)