button 不触发onclick事件 没有匹配委托的重载 No overload for 'button_Click' matches delegate 'EventHandler'

<asp:Button>和<button>是不一样的

迄今为止,我所知道的他们俩的区别是

<asp:Button>触发事件是直接用OnClick=“btn_Click”就可以在后台写逻辑,但不好加图标。

如果想在按钮上加图,要用Button的style。

例如: <asp:Button ID="Button1" runat="server" Text="Button" style="background-image:url('XXX.jpg')" />

或者是写Css样式。。

 

<button>是直接在中间加<img src="../../images/search.png" width="14" height="14"/>就可以的。

并且还有一个重要的问题。<button>要想触发后台事件,不仅要写onclick,还要写onserverclick。

例如:

<button id="btnSearch" runat="server" type="button"  onclick="if (true) " onserverclick="btnSearch_Click">

                                    <img src="../../images/search.png" width="14" height="14"/>&nbsp;查询</button>

 

注意:在写逻辑的过程中,我没有生成方法,而是自己写的方法,所以页面会报错

 

 

No overload for 'button_Click' matches delegate 'EventHandler'。翻译过来就是“没有匹配委托的重载”。

查了很久没有答案,甚至去看了.design文件,也正常。最后发现是在方法中忘记写(object sender, EventArgs e)了。

 

 真的晕。。

 

posted on 2021-03-15 19:14  张不胖  阅读(1775)  评论(0编辑  收藏  举报

导航