我有以下代码:
<sdk:DataGridTemplateColumn Header="Print Ticket"
Width="100">
<sdk:DataGridTemplateColumn.CellEditingTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<TextBlock Text="{Binding Path=ticketId}"
Width="0"
x:Name="printTicketBlock" />
<Button Content="Print Ticket"
Cursor="Hand" />
</StackPanel>
</DataTemplate>
</sdk:DataGridTemplateColumn.CellEditingTemplate>
</sdk:DataGridTemplateColumn>
printTicketBlock的值每次都不同,我希望按钮使用该值。但我似乎无法理解如何做到这一点。 从数据库中检索id,通常是1,2,3等。 但我希望我能获得价值(会有所不同)。
以下是显示内容的屏幕截图:
任何人都可以帮助我。
由于
答案 0 :(得分:1)
该按钮继承了DataContext中的模板化项,您可以像这样得到您的对象:
private void Button_Click(object sender, RoutedEventArgs e)
{
var data = (sender as Button).DataContext as MyDataObject;
DoStuff(data.ticketId);
}
我认为无需对TextBlock做任何事情。
编辑:目前还不是很清楚你想要什么(“我希望按钮使用该值”非常模糊),如果这不是你的意思寻找澄清你的问题。