Share via


HOW TO:使用 Web Form 應用程式中的事件

Web Form 應用程式中的常見使用情況是使用控制項填入 Web 網頁,然後根據使用者所按的控制項,執行特定動作。 例如,當使用者在 Web 網頁中按一下 System.Web.UI.WebControls.Button 控制項時,會引發事件。 應用程式可以透過處理該事件,針對按一下按鈕的動作執行適當的應用程式邏輯。

如需 Web Form 程式撰寫模型 (Programming Model) 的詳細資訊,請參閱 Web Form 的程式設計

若要處理 Web 網頁上的按一下按鈕事件

  1. 建立有 Button 控制項的 Web Form 網頁 (ASP.NET 網頁)。

    <asp:Button id = "Button" Text = "Click Me" runat = server/>
    
  2. 定義符合 Click 事件委派簽章的事件處理常式。 Click 事件會針對委派型別使用 EventHandler 類別,並針對事件資料使用 EventArgs 類別。

  3. 將 Button 項目中的 OnClick 屬性設為事件處理常式方法。

    <asp:Button
            id = "Button" OnClick = "Button_Click" Text = "Click Me" 
            runat = server/>
    
    注意事項注意事項

    Web Form 應用程式開發人員能以宣告方式架設 (Wire) 事件,不需直接使用委派。ASP.NET 網頁架構會產生程式碼,該程式碼會建立參考 Button_Click 的 EventHandler 執行個體,並將這個委派執行個體加入至 Button 介面的 Click 事件。

範例

以下 Web Form 網頁會處理 ButtonClick 事件以變更 TextBox 的背景色彩。

安全性注意事項安全性注意事項

這個範例有一個可接受使用者輸入的文字方塊,這可能會造成安全性威脅。根據預設,ASP.NET 網頁會驗證該使用者的輸入內容中沒有包含指令碼或 HTML 項目。如需詳細資訊,請參閱 指令碼攻擊概觀

<html>
   <script language="VB" runat=server> 
      Private Sub Button_Click(sender As Object, e As EventArgs)
         Box.BackColor = System.Drawing.Color.LightGreen
      End Sub
   </script>
   <body> 
      <form method="POST" action="Events.aspx" runat=server>   
          Click the button, and notice the color of the text box.<br><br>
         <asp:TextBox 
         id = "Box" Text = "Hello" BackColor = "Cyan" runat=server/>             
         <br><br>       
        <asp:Button
        id = "Button" OnClick = "Button_Click" Text = "Click Me" 
        runat = server/>         
      </form>
   </body>
</html>
<html>
   <script language="C#" runat=server> 
      private void Button_Click(object sender, EventArgs e){
         Box.BackColor = System.Drawing.Color.LightGreen;
               }
   </script>
   <body> 
      <form method="POST" action="Events.aspx" runat=server>   
          Click the button, and notice the color of the text box.<br><br>
         <asp:TextBox 
         id = "Box" Text = "Hello" BackColor = "Cyan" runat=server/>             
         <br><br>       
        <asp:Button
        id = "Button" OnClick = "Button_Click" Text = "Click Me" 
        runat = server/>         
      </form>
   </body>
</html>

編譯程式碼

若要查看事件處理在 Web Form 中運作的方法,請將範例網頁以 .aspx 副檔名 (表示該檔為 ASP.NET 網頁) 儲存,並將其部署於 IIS 虛擬根目錄 (Virtual Root) 中的任何位置。

請參閱

概念

事件和委派

使用事件

引發事件

其他資源

處理和引發事件