我是asp.net的新手,我对如何解决这个问题感到很困惑。我有为所有内容编写的后台代码,现在我只是让所有东西“看起来很漂亮”。最初我有一个ASP按钮来提交表单。现在我希望按钮是一个ASP ImageButton。但是现在我的方法由于此更改而返回错误。这就是它的样子:
//.ascx file
<div id="eSubmit">
<asp:ImageButton id="btnSubmit1" runat="server" ImageUrl="~/Style/Images/addButtonE.png" />
</div>
//method behind
void btnSubmit_Click(object sender, EventArgs e)
{
if (!Page.IsValid) { return; }
try
{
//do some data checking
//bind entries
}
catch (ApplicationException ax)
{
;
}
}
将按钮更改为图像按钮后生成的错误是:
无法将'System.EventHandler'转换为 'System.Web.UI.ImageClickEventHandler'
所以我的主要问题是:如何修复此错误?这会影响我发送到服务器的数据(当它只是一个按钮时会导致不同的行为吗?)
答案 0 :(得分:4)
使用以下行
protected void btnSubmit_Click(object sender, ImageClickEventArgs e)
而不是
void btnSubmit_Click(object sender, EventArgs e)
因为图像按钮有不同的事件处理程序.. 谢谢 Gourav
答案 1 :(得分:3)
ImageButton.OnClick
的事件签名与Button.OnClick
不同:
//imagebutton
void btnSubmit_Click(object sender, ImageClickEventArgs e)
{
//.......
}
//button
void btnSubmit_Click(object sender, EventArgs e)
{
//.......
}
答案 2 :(得分:0)
试试这个...... 复制以前的方法代码(在btnSubmit_Click中),然后删除整个方法,转到UI(在设计模式下)双击图像按钮&amp;粘贴复制的代码&amp;运行