我有一个名为 mainEvents_sql 的数据网格视图,其中包含以下列:
<DataGrid.Columns >
<DataGridTextColumn Header="Event ID" Binding="{Binding id}" IsReadOnly="True" />
<DataGridTextColumn Header="event name" Binding="{Binding name}" Width="*" />
<DataGridTemplateColumn>
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<Button Content="Update" x:Name="btnUpdate"
Click="btnUpdate_Click" CommandParameter="{Binding name}" >
</Button>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
</<DataGrid.Columns >
我正在尝试做一个更新按钮,我得到了当前单元格,但它是原始单元格,而不是新值,这是我的 btnUpdate 事件:
private void btnUpdate_Click(object sender, EventArgs e)
{
DataRowView selectedFile = ((FrameworkElement)sender).DataContext as DataRowView;
if (mainEvents_sql.SelectedItems.Count > 0){
String str = Convert.ToString(selectedFile.Row.ItemArray[1]);
// update the DB with ADO .net
}
}
str 是原始值,我如何获得新值?
编辑:如果用户按回车键,我会得到当前值,但当他通过单击另一个项目退出单元格时却没有,我该如何解决?