Datalist删除一条记录的解决方法
今天在使用中发现不能删除记录,原因使用了局部刷新控件ASPxCallbackPanel
将局部刷新控件的EnabledViewStatus设为False后就可以正常删除
现提出两种解决方案
第一个
设置DataList的DataKeyField=主键,Button的CommandName="Delete"
在DataList的ItemCommand的事件里面:
ItemCommand:
if (e.CommandName=="Delete")
{
int ID =(int)DataList.DataKeys[e.Item.Itemindex]
//int就是要删的主键,删除这条纪录就行了
}
protected void DataList1_ItemCommand(object source, DataListCommandEventArgs e)
{
if (e.CommandName == "Delete")
{
int id = (int)DataList1.DataKeys[e.Item.ItemIndex];
Response.Write(id);
}
}
第二种方法
为删除的按钮绑定表中的一个字段.如ID,然后在给它一个链接,
并为它做个删除的链接,index.apx?del=<%# databinder.eval(container.dataitem,"id") %>
然后在index.aspx里代码,先判定是否有del的信息,然后就Request.QueryString("id")获取值,然后在进行SQL的删除语句就可以了。
————————————————————————
当然了第一种方法才是最好的方法!!!
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/23109131/viewspace-675785/ ,如需转载,请注明出处,否则将追究法律责任。