有没有办法可以访问未点击的按钮的电子事件参数?
我需要删除gridview中的多个条目,方法是单击一个按钮并让它模拟单击每个所选条目的删除按钮,但我不能使用performClick,所以我试图调用删除每个条目的实际方法一。但是,该方法需要“e As System.Web.UI.WebControls.GridViewCommandEventArgs”参数,我无法弄清楚如何获得它。
答案 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发送到任何执行删除的功能。