|
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();
} |