我正在尝试在GridView
中实现一个简单的Button
字段。
<asp:ButtonField ButtonType="Button" CommandName="Delete" Text="Delete" />
我有一个三层的应用程序,我将在这个例子中合并成一个函数:
protected void GV1_RowCommand(object sender, GridViewCommandEventArgs e)
{
if (e.CommandName == "Delete")
{
var deletion = (HRA_internalLesion) GV1.SelectedRow.DataItem;
DataContext conn = new DataContext();
conn.HRA_internalLesions.DeleteOnSubmit(deletion);
conn.SubmitChanges();
}
}
我确信var deletion
行没有返回Linq到我想要的SQL对象。
控件初始呈现后,DataItem
属性不可用。如果您想这样做,则必须从页面上的字段重新创建数据对象。
从MSDN:
DataItem属性只在GridView控件的RowDataBound事件期间和之后可用。
我不确定为什么它说"and after"——这对我来说是令人困惑的语言——但尽管如此,有记录的证据