是否可以在C#asp.net中的其他复选框事件中调用ImageButtonClick事件?

时间:2014-08-06 05:09:30

标签: c# asp.net events

我有一个情况,我在下面解释:

我在我的应用程序中使用此图像按钮单击事件

protected void btnUpdate_Click (object sender, ImageClickEventArgs e)
{
}

我需要在下面的复选框事件中调用此事件:

 protected void Matt_CheckedChanged (object sender, EventArgs e)
    {
        if ((Matt.Checked==true) && (Rematt1.Checked == false) && (Rematt2.Checked == false) && (Rematt3.Checked == false))
        {
            txtTumblingRefno_TextChanged(sender,e);
            btnUpdate_Click(sender,e);
        }
       else
        {
        }
  }

这里我在此复选框事件中调用textchanged事件,但我无法在复选框事件中调用imagebuttonclick事件。它表明存在一些无效的参数。

请帮我解决这个问题。

2 个答案:

答案 0 :(得分:1)

ImageButton click hanlder具有与标准EventArgs不同的事件args(即ImageClickEventArgs)。这就是为什么你得到编译器错误。由于您没有以任何方式使用args,您只需将null作为args发送(见下文):

protected void Matt_CheckedChanged (object sender, EventArgs e)
{
    if ((Matt.Checked==true) && (Rematt1.Checked == false) && (Rematt2.Checked == false) && (Rematt3.Checked == false))
    {
        txtTumblingRefno_TextChanged(sender,e);
        btnUpdate_Click(sender, null);
    }
   else
    {
    }
}

您也可以在一个可以在任何地方调用的单独方法中编写您需要的任何内容。

答案 1 :(得分:1)

使用ImageClickEventArgs.Empty,将此值传递给与没有数据的事件相关联的事件处理程序。

protected void Matt_CheckedChanged (object sender, EventArgs e)
    {
        if ((Matt.Checked==true) && (Rematt1.Checked == false) && (Rematt2.Checked == false) && (Rematt3.Checked == false))
        {
            txtTumblingRefno_TextChanged(sender,e);
            btnUpdate_Click(sender,ImageClickEventArgs.Empty);
        }
       else
        {
        }
  }