2016-06-14 60 views
0

所以我是C#和ASP的新手,我試圖創建一個非常基本的表單來執行計算。但是,在我實際實現計算部分之前,我只是試圖通過使其更改按鈕的名稱而不是其他任何東西來對錶單進行簡單測試。但是,我的代碼沒有編譯,我不明白爲什麼。如果我犯了一個明顯的錯誤,請原諒我,我只是想在這裏做一個簡單的應用程序,而我之前幾乎沒有做過任何與C#或ASP的任何事情。 所以,我有一個HTML表單(其具有按鈕,表單字段等)的唯一參考C#代碼感:這個ASP(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 'ASP.default_aspx' 不實現接口成員 「System.Web.IHttpHandler.IsReusable 'C:\用戶[審查] \應用程序數據\本地\ TEMP \臨時 ASP.NET文件\根\ ab2ef4aa \ 781a850f \ App_Web_lvhfdmq2.0.cs 172

錯誤3 'ASP.default_aspx.GetTypeHashCode()':找不到合適的方法 覆蓋c:\ Use RS [審查] \應用程序數據\本地\ TEMP \臨時ASP.NET 文件\根\ ab2ef4aa \ 781a850f \ App_Web_lvhfdmq2.0.cs 538

錯誤4 'ASP.default_aspx.ProcessRequest(System.Web.HttpContext)' :沒有 合適的方法發現 倍率C:\用戶[審查] \應用程序數據\本地\ TEMP \臨時ASP.NET 文件\根\ ab2ef4aa \ 781a850f \ App_Web_lvhfdmq2.0.cs 543

錯誤2「ASP .default_aspx.SupportAutoEvents':找不到合適的方法 覆蓋c:\ Users [審查] \ AppData \ Local \ Temp \ Temporary ASP.NET Files \ root \ ab2ef4aa \ 781a850f \ App_Web_lvhfdmq2.0.cs 199

錯誤6「主」不包含「CalculateBtn」和無 擴展方法的定義「CalculateBtn」接受型 「主」的第一個參數可以找到(是否缺少using指令或程序 組件 參考?)C:\ aspnet \ XEx02Quotation \ Default.aspx.cs 14 57 XEx02報價

錯誤1確保此代碼文件中定義的類匹配 「inherits」屬性,並且它擴展了正確的基類(例如 Page或 UserControl)。 C:\ aspnet \ XEx02Quotation \ Default.aspx.cs 8 33 XEx02報價

任何人都可以幫我弄清楚這裏有什麼問題嗎?

+0

刪除此行CalculateBtn_Calculate + =新的EventHandler(this.CalculateBtn.Click);在你的page_load事件中。請把你的aspx標記也放在html標籤之前的上半部分。 –

+0

刪除該行,仍然無法構建。 <%@ Page Language =「C#」AutoEventWireup =「false」CodeFile =「Default.aspx.cs」Inherits =「_ Default」%> – inaprniac

+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); 
} 
+0

這仍然沒有工作,同樣的錯誤。 – inaprniac

+0

IT在我的機器上正常工作,您能否確認按鈕的ID和'This。** CalculateBtn **。Click'是一樣的 –

+1

@不幸運最有可能您的頁面具有正確的基類... –