1,編輯資料 protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e) { this.GridView1.EditIndex = e.NewEditIndex; GetData(); } 2,取消編輯 protected void GridView1_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e) { this.GridView1.EditIndex = -1;//取消編輯狀態 GetData(); } 3,添加欄位在 DataKeyNames 屬性裡添加顯示的欄位
4,取出資料庫資料 protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e) { //修改資料庫事件 string Cus = this.GridView1.DataKeys[e.RowIndex][0].ToString();//資料的索引 string Companys = this.GridView1.DataKeys[e.RowIndex][1].ToString(); Response.Write(Cus + "----" + Companys);//查看資料取出的資料 } 5,取出使用者修改後提交上來的資料 protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e) { string Cus = this.GridView1.DataKeys[e.RowIndex][0].ToString(); string Com = ((TextBox)this.GridView1.Rows[e.RowIndex].Cells[0].Controls[0]).Text.ToString(); string Con = ((TextBox)this.GridView1.Rows[e.RowIndex].Cells[1].Controls[0]).Text.ToString(); string Title = ((TextBox)this.GridView1.Rows[e.RowIndex].Cells[2].Controls[0]).Text.ToString();//取得(用戶端)儲存格資料; Response.Write(Cus + "----" + Com + "----" + Con + "----" + Title);//資料庫中取得了兩條資料分別賦值給了Cus和Com; } 6,修改資料 protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e) { string Cus = this.GridView1.DataKeys[e.RowIndex][0].ToString(); string Com = ((TextBox)this.GridView1.Rows[e.RowIndex].Cells[0].Controls[0]).Text.ToString(); string Con = ((TextBox)this.GridView1.Rows[e.RowIndex].Cells[1].Controls[0]).Text.ToString(); string Title = ((TextBox)this.GridView1.Rows[e.RowIndex].Cells[2].Controls[0]).Text.ToString();//取得(用戶端)儲存格資料; Update(Cus, Com, Con, Title);//(調用Update方法)執行修改操作 this.GridView1.EditIndex = -1; GetData();//重新綁定資料 } public void Update(string Cus, string Com, string Con, string Title) { SqlConnection conn = new SqlConnection("server=localhost;database=Northwind;User=sa;PassWord="); SqlCommand com = new SqlCommand("Update Customers set CompanyName='" + Com + "',ContactName='" + Con + "',ContactTitle='" + Title + "' where CustomerID='" + Cus+"'",conn); conn.Open(); com.ExecuteNonQuery(); conn.Close(); } 7,刪除資料 protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e) { string Cus = this.GridView1.DataKeys[e.RowIndex][0].ToString(); del(Cus); GetData();//重新綁定資料 } public void del(string Cus) { SqlConnection conn = new SqlConnection("server=localhost;database=Northwind;User=sa;PassWord="); SqlCommand com = new SqlCommand("Delete from Customers where CustomerID='" + Cus + "'", conn); conn.Open(); com.ExecuteNonQuery();//此方法收到約束,是因為在沒有刪除前面的資料之前不能刪除此條資料 conn.Close(); } |