所以我是C#和ASP的新手,我正在尝试创建一个执行计算的基本表单。但是,在我实际实现计算部分之前,我只是尝试通过更改按钮的名称而不是其他任何内容来对表单进行简单测试。但是,我的代码没有编译,我也不太明白为什么。如果我犯了一个明显的错误,请原谅我,我只是想在这里做一个简单的应用程序而且我以前几乎没有用C#或ASP做过任何事情。 所以,我有一个HTML表单(有按钮,表单字段等),只提到c#代码:
<asp:Button id="calculate"
Text="Calculate"
OnClick="CalculateBtn_Calculate"
runat="server"/>
放在(当前未使用和未引用的)表单字段之后。基本上即使我要添加一个计算它的事件,现在我只有按钮代码。唯一的问题是我的测试代码没有编译而且我是新的我不知道为什么。 我的C#代码是:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
public partial class Main
{
protected void Page_Load(object sender, EventArgs e)
{
CalculateBtn_Calculate += new EventHandler(this.CalculateBtn.Click);
}
void CalculateBtn_Calculate(Object sender,
EventArgs e)
{
Button clickedButton = (Button)sender;
clickedButton.Text = "...button clicked...";
clickedButton.Enabled = false;
}
}
我编译时得到的错误是:
错误5&#39; ASP.default_aspx&#39;没有实现接口成员 &#39; System.Web.IHttpHandler.IsReusable&#39; C:\用户[审查] \应用程序数据\本地\ TEMP \临时 ASP.NET Files \ root \ ab2ef4aa \ 781a850f \ App_Web_lvhfdmq2.0.cs 172
错误3&#39; ASP.default_aspx.GetTypeHashCode()&#39;:找不到合适的方法 覆盖c:\ Users [censored] \ AppData \ Local \ Temp \ Temporary ASP.NET Files \ root \ ab2ef4aa \ 781a850f \ App_Web_lvhfdmq2.0.cs 538
错误4&#39; ASP.default_aspx.ProcessRequest(System.Web.HttpContext)&#39;:否 找到合适的方法 覆盖c:\ Users [censored] \ AppData \ Local \ Temp \ Temporary ASP.NET Files \ root \ ab2ef4aa \ 781a850f \ App_Web_lvhfdmq2.0.cs 543
错误2&#39; ASP.default_aspx.SupportAutoEvents&#39;:找不到合适的方法 覆盖c:\ Users [censored] \ AppData \ Local \ Temp \ Temporary ASP.NET 文件\ root \ ab2ef4aa \ 781a850f \ App_Web_lvhfdmq2.0.cs 199
错误6&#39;主要&#39;不包含&#39; CalculateBtn&#39;的定义和不 扩展方法&#39; CalculateBtn&#39;接受第一个类型的参数 &#39;主&#39;可以找到(你是否错过了使用指令或 部件 参考?)C:\ aspnet \ XEx02Quotation \ Default.aspx.cs 14 57 XEx02Quotation
错误1确保此代码文件中定义的类与 &#39;继承&#39;属性,并且它扩展了正确的基类(例如 页面或 用户控件)。 C:\ aspnet \ XEx02Quotation \ Default.aspx.cs 8 33 XEx02Quotation
任何人都可以帮我弄清楚这里有什么问题吗?
答案 0 :(得分:0)
如果您要从后端分配事件,则无需在标记中指定OnClick="CalculateBtn_Calculate"
。并且您将事件分配给方法,而不是为方法分配方法。请参阅以下代码:
Asp代码:
<asp:Button id="CalculateBtn" Text="Calculate" runat="server"/>
C#
protected void Page_Load(object sender, EventArgs e)
{
this.CalculateBtn.Click += new EventHandler(CalculateBtn_Calculate);
}