ASP.NET数据绑定之DataList控件实战篇(2)

protected void DataList1_EditCommand(object source, DataListCommandEventArgs e)// e表示DataList传递给该函数的信息。 { this.DataList1.EditItemIndex = e.Item.ItemIndex;//e.Item表示DataList中发生事件的那一项 this.dataBindToDataList(); }

这时候,编辑模板项的绑定信息就会显示出来,我们可以在这更改姓名,或者取消编辑,效果图如下

ASP.NET数据绑定之DataList控件实战篇

       

ASP.NET数据绑定之DataList控件实战篇

                                     

最后是取消修改功能的代码、更新功能的代码、删除功能的代码,事件分别为DataList1_CancelCommand、DataList1_UpdateCommand、DataList1_DeleteCommand。

protected void DataList1_CancelCommand(object source, DataListCommandEventArgs e)// e表示DataList传递给该函数的信息。 { DataList1.EditItemIndex = -1; //当EditItemIndex属性值为-1时,表示不显示EditItemTemplate模板 dataBindToDataList(); } protected void DataList1_UpdateCommand(object source, DataListCommandEventArgs e) { string ID =DataList1.DataKeys[e.Item.ItemIndex].ToString(); string name = ((TextBox)e.Item.FindControl("txtName")).Text ; SqlConnection con = DB.createConnection(); SqlCommand cmd = new SqlCommand("update person set personName='"+name+"'where pID='"+ID+"'",con); cmd.ExecuteNonQuery(); DataList1.EditItemIndex = -1; dataBindToDataList(); } protected void DataList1_DeleteCommand(object source, DataListCommandEventArgs e) { string ID = DataList1.DataKeys[e.Item.ItemIndex].ToString(); SqlConnection con = DB.createConnection(); SqlCommand cmd = new SqlCommand("delete from person where pID='" + ID + "'", con); cmd.ExecuteNonQuery(); DataList1.EditItemIndex = -1; dataBindToDataList(); }

用DataList控件实现对数据库中person表的操作,实现查看详细信息,修改操作,大致流程是先修改DataList控件的各个模板中绑定的数据,然后等待具体的事件使该模板中的内容显示出来,最后再对数据进行操作。当数据适配器DateAdapter对象将数据源中的数据填充到DataSet中后,我么可以用DataList.DataKeyField=“主键字段名” 语句将主键添加到DataList的DataKeys集合中,当我们要修改数据的时候可以再从该集合中取出要编辑的数据项的主键,语句为DataList1.DataKeys[e.Item.ItemIndex]。这样我们就可以随心所欲的修改DataList表中的数据项了。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wjwdfx.html