DataGrid中的数据编辑删除操作
点击次数:54 次 发布日期:2008-11-06 08:12:31 作者:源代码网
|
在DataGrid控件中属性的事件中添加一下事件,连接一个Access数据表 在属性编辑器中添加按钮列(编辑、删除) 再添加事件中,添加label和textbox和添加按钮,以输入要添加的列的值 private void Page_Load(object sender, System.EventArgs e) { // 在此处放置用户代码以初始化页面 if(!Page.IsPostBack) BindData(); } //定义一个方法 void BindData() { this.oleDbDataAdapter1.Fill(ds1); this.DataGrid1.DataSource=ds1; this.DataGrid1.DataBind(); } //编辑事件 private void DataGrid1_EditCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e) { this.DataGrid1.EditItemIndex=e.Item.ItemIndex; BindData(); } //取消事件 private void DataGrid1_CancelCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e) { this.DataGrid1.EditItemIndex=-1; BindData(); } //更新事件 软件开发网 www.mscto.com private void DataGrid1_UpdateCommand(object source,System.Web.UI.WebControls.DataGridCommandEventArgs e) { this.oleDbDataAdapter1.Fill(ds1); //OleDbCommandBuilder ocb=new OleDbCommandBuilder(this.oleDbDataAdapter1); TextBox txtName,txtSex,txtAge; txtName=(TextBox)e.Item.Cells[3].Controls[0]; txtSex=(TextBox)e.Item.Cells[4].Controls[0]; txtAge=(TextBox)e.Item.Cells[5].Controls[0]; ds1.use.Rows[e.Item.ItemIndex]["username"]=txtName.Text; ds1.use.Rows[e.Item.ItemIndex]["sex"]=txtSex.Text; ds1.use.Rows[e.Item.ItemIndex]["age"]=txtAge.Text; //第二种方法(以下两行相当于上面注释掉的那一行) string strUpdate="update use set username=""+txtName.Text+"",sex=""+txtSex.Text+"",age=""+txtAge.Text+"" where userID=""+this.DataGrid1.DataKeys[e.Item.ItemIndex]+"""; this.oleDbDataAdapter1.UpdateCommand.CommandText=strUpdate; this.oleDbDataAdapter1.Update(ds1); this.DataGrid1.EditItemIndex=-1; BindData(); } private void DataGrid1_DeleteCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e) { this.oleDbDataAdapter1.Fill(ds1); OleDbCommandBuilder ocb=new OleDbCommandBuilder(this.oleDbDataAdapter1); DataRow drDelete=ds1.use.Rows[e.Item.ItemIndex]; drDelete.Delete(); this.oleDbDataAdapter1.Update(ds1); BindData(); } //添加记录 private void Button1_Click(object sender, System.EventArgs e) { this.oleDbDataAdapter1.Fill(ds1); OleDbCommandBuilder ocb=new OleDbCommandBuilder(this.oleDbDataAdapter1); DataRow drInsert=ds1.use.NewRow(); drInsert["userID"]="001"; drInsert["username"]=this.TextBox1.Text; drInsert["sex"]=this.TextBox2.Text; drInsert["age"]=this.TextBox3.Text; ds1.use.Rows.Add(drInsert); this.oleDbDataAdapter1.Update(ds1); BindData(); } } 源代码网推荐 源代码网供稿. |
