iT邦幫忙

0

Web Forms 頁面結構解析

  • 分享至 

  • xImage
  •  

Web Forms 頁面結構解析

ASP.NET Web Forms 是一種以事件驅動的開發模式,讓開發者可以快速建構動態網站。本章將深入解析 Web Forms 頁面的結構,包括 .aspx 文件與代碼後置文件 (.cs 或 .vb) 的關係、伺服器控制項與 HTML 控制項的區別,以及使用 Code-Behind 開發模式。


1. .aspx 文件與代碼後置文件的關係

在 ASP.NET Web Forms 中,頁面分為兩個部分:

  • .aspx 文件:負責定義頁面的 HTML 結構與伺服器控制項。
  • 代碼後置文件 (.cs 或 .vb):負責實現伺服器端的邏輯處理。

範例:簡單的 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 = "按鈕已被點擊!";
    }
}

說明

  1. <%@ Page %> 指令

    • 指定頁面的編程語言(C# 或 VB.NET)。
    • 指定代碼後置文件 (CodeFile) 和繼承類別 (Inherits)。
  2. 伺服器控制項

    • <asp:Label><asp:Button>,這些控制項會被轉換成對應的 HTML 元素,並且可以觸發伺服器端事件。

2. 伺服器控制項與 HTML 控制項的區別

伺服器控制項

  • 使用 runat="server" 屬性。
  • 可以觸發伺服器端事件(例如按鈕點擊)。
  • 可以直接在代碼後置文件中操作。

範例:

<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:Button ID="Button1" runat="server" Text="提交" OnClick="Button1_Click" />

HTML 控制項

  • 原生 HTML 元素。
  • 若要觸發伺服器端事件,需要額外設定。

範例:

<input type="text" id="TextBox1" runat="server" />
<input type="button" id="Button1" value="提交" runat="server" />

https://ithelp.ithome.com.tw/upload/images/20241223/20106640kOlEZtO4ao.png


3. 使用 Code-Behind 開發模式

Code-Behind 是 ASP.NET Web Forms 的開發模型,將頁面邏輯與設計分離,提升程式碼的可維護性。

使用 Code-Behind 的優點

  1. 分離邏輯與表現:開發者可專注於伺服器端邏輯,而設計師可專注於 HTML。
  2. 增強可讀性:代碼與介面分開,便於協作。
  3. 提升可維護性:修改設計時不會影響後端邏輯。

範例:

步驟 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 頁面結構的基本概念:

  1. .aspx 文件與代碼後置文件的分工與關係。
  2. 伺服器控制項與 HTML 控制項的功能差異與應用場景。
  3. 使用 Code-Behind 開發模式的優點與實例。

透過這些基礎知識,您可以輕鬆開始使用 ASP.NET Web Forms 建構動態網站。


圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言