尝试创建一个简单的表单:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="register.aspx.cs" Inherits="AlphaPack._Default"
MasterPageFile="MasterPages/Main.master"
title="Hi there!"
%>
<script runat="server">
public void regSubmit()
{
statusLabel.Text = "Submitted!";
}
</script>
<asp:content id="Content1" contentplaceholderid="mainContent" runat="server">
<form id="registerForm" runat="server">
<asp:Label runat="server" id="statusLabel"></asp:Label>
<asp:Button id="id" text="Register" OnClick="regSubmit" runat="server" />
</form>
</asp:content>
希望很明显我正在尝试做什么,有人点击按钮并提交表单并更改标签文字。
Compiler Error Message: CS0123: No overload for 'regSubmit' matches delegate 'System.EventHandler'
我知道我在这里做了一些根本错误的事情,我是新手.net从经典ASP转移。
答案 0 :(得分:6)
试试这个:
protected void regSubmit(object sender, EventArgs e)
答案 1 :(得分:4)
因为它是一个事件处理程序,所以您的click方法需要具有正确的
签名public void regSubmit(object sender, EventArgs e)
Jon Skeet写了article on understanding Delegates and Events。对此有所帮助可能会在将来帮助您解决这些问题。