2012-07-13 64 views
0

我想通過點擊位於gridview內的ImageButton從gridview中刪除行。我得到行索引但不知道如何刪除。我的gridview從會話綁定,我不想重新綁定gridview。如何從行命令事件的gridview中刪除行?

這裏是我的代碼:

protected void GVDetail_RowCommand(object sender, GridViewCommandEventArgs e) 
    { 
    if (e.CommandName.Equals("Remove")) 
    { 
     List<Class1> list = (List<Class1>)Session["value1"]; 
     int index = Convert.ToInt32(e.CommandArgument); 
     GridViewRow gridRow = gvDetail.Rows[index];// (GridViewRow)(((ImageButton)e.CommandSource).NamingContainer); 

     ((List<Class1>)Session["value1"]).RemoveAt(index); 
    } 
    } 

如果有人對此有比請幫我的任何想法..

回答

2

使用gridview的deleteRow方法即可。

void GVDetail_RowCommand_RowCommand(Object sender, GridViewCommandEventArgs e) 
{ 
if(e.CommandName=="Remove") 
{ 
    var id = Int32.Parse(e.CommandArgument); 
    GVDetail.DeleteRow(id); 

} 
} 
+0

我都嘗試過,但它不工作... – user968441 2012-07-13 15:46:01

+0

有你刪除後網格綁定?刪除後調用gridview.Bind()方法。 – 2012-07-13 15:55:14

+1

你必須調用綁定方法bcz,否則gridview不會更新。 – 2012-07-13 15:55:50

0
protected void GVPurchaseOrderTax_RowDeleting(object sender, GridViewDeleteEventArgs e) 
{ 
    try 
    { 
     if (dt.Rows.Count > 0) 
     { 
      dt.Rows[e.RowIndex].Delete(); 
      GVPurchaseOrderTax.DataSource = dt; 
      GVPurchaseOrderTax.DataBind(); 
     } 
    } 
} 
+0

考慮提供解​​釋給你的代碼 – arghtype 2015-09-24 07:30:42