ASP.NET Web Forms 是一種以事件驅動的開發模式,讓開發者可以快速建構動態網站。本章將深入解析 Web Forms 頁面的結構,包括 .aspx 文件與代碼後置文件 (.cs 或 .vb) 的關係、伺服器控制項與 HTML 控制項的區別,以及使用 Code-Behind 開發模式。
在 ASP.NET Web Forms 中,頁面分為兩個部分:
以下是一個示範:
Default.aspx
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="Default" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>簡單的 Web Forms 頁面</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Label ID="Label1" runat="server" Text="歡迎來到 Web Forms!"></asp:Label>
<br />
<asp:Button ID="Button1" runat="server" Text="點擊我" OnClick="Button1_Click" />
</div>
</form>
</body>
</html>
Default.aspx.cs
using System;
public partial class Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
// 頁面加載時的邏輯處理
}
protected void Button1_Click(object sender, EventArgs e)
{
Label1.Text = "按鈕已被點擊!";
}
}
<%@ Page %>
指令:
CodeFile
) 和繼承類別 (Inherits
)。伺服器控制項:
<asp:Label>
和 <asp:Button>
,這些控制項會被轉換成對應的 HTML 元素,並且可以觸發伺服器端事件。runat="server"
屬性。範例:
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:Button ID="Button1" runat="server" Text="提交" OnClick="Button1_Click" />
範例:
<input type="text" id="TextBox1" runat="server" />
<input type="button" id="Button1" value="提交" runat="server" />
Code-Behind 是 ASP.NET Web Forms 的開發模型,將頁面邏輯與設計分離,提升程式碼的可維護性。
步驟 1:設計頁面
在 .aspx
文件中定義控制項:
<asp:Label ID="Label1" runat="server"></asp:Label>
<asp:Button ID="Button1" runat="server" Text="更新文字" OnClick="Button1_Click" />
步驟 2:撰寫邏輯
在 Default.aspx.cs
文件中實現按鈕點擊邏輯:
protected void Button1_Click(object sender, EventArgs e)
{
Label1.Text = "按鈕被點擊了,文字已更新!";
}
本章介紹了 ASP.NET Web Forms 頁面結構的基本概念:
透過這些基礎知識,您可以輕鬆開始使用 ASP.NET Web Forms 建構動態網站。