从未单击的按钮获取e参数

时间:2014-04-29 16:52:00

标签: asp.net webforms

有没有办法可以访问未点击的按钮的电子事件参数?

我需要删除gridview中的多个条目,方法是单击一个按钮并让它模拟单击每个所选条目的删除按钮,但我不能使用performClick,所以我试图调用删除每个条目的实际方法一。但是,该方法需要“e As System.Web.UI.WebControls.GridViewCommandEventArgs”参数,我无法弄清楚如何获得它。

2 个答案:

答案 0 :(得分:0)

您将无法访问EventArgs参数。

我建议您像这样设计代码:

public class MyClass 
{
  private ListView listView;

  protected void OnClick(EventArgs e) 
  {
    performAction();
  }

  private void performAction()
  {
   listView.deleteSelectedItems();
  }
}

不要在委托中的其他地方实现您需要的功能。而是在委托人的身体内部调用此功能。这样您就可以在其他地方重用performAction() ..

答案 1 :(得分:0)

如果在datagrid的每一行中添加一个复选框并单击按钮,则可以解决调用删除按钮的问题。删除可以按以下方式对选中的行执行删除操作

 Protected void btnDelete_Click(object sender, EventArgs e)
 {
   for(int i = 0; i < GridView1.Rows.Count; i++)
   {
    CheckBox chkDelete = (CheckBox)GridView1.Rows[i].Cells[0].FindControl("chkSelect");
     if(chkDelete != null)
     {
      if(chkDelete.Checked)
      {
         strID = GridView1.Rows[i].Cells[1].Text;
         ids.Add(strID); //ids can colletion of any type
      }
     }
   }
 }

现在将ids发送到任何执行删除的功能。