Freigeben über


Gewusst wie: Verarbeiten von Ereignissen in einer Web Forms-Anwendung

In Web Forms-Anwendungen wird häufig eine Webseite mit Steuerelementen gefüllt und dann basierend auf dem Steuerelement, auf das der Benutzer klickt, ein bestimmter Vorgang ausgelöst. So löst z. B. ein System.Web.UI.WebControls.Button-Steuerelement ein Ereignis aus, wenn der Benutzer in der Webseite darauf klickt. Indem sie das Ereignis behandelt, kann die Anwendung die dem Klicken auf die Schaltfläche entsprechende Anwendungslogik ausführen.

Informationen zum Web Forms-Programmiermodell finden Sie unter Programmieren von Web Forms.

So behandeln Sie ein Click-Ereignis für eine Schaltfläche auf einer Webseite

  1. Erstellen Sie eine Web Forms-Seite (ASP.NET-Seite) mit einem Button-Steuerelement.

    <asp:Button id = "Button" Text = "Click Me" runat = server/>
    
  2. Definieren Sie einen Ereignishandler, der der Signatur des Delegaten für das Click-Ereignis entspricht. Das Click-Ereignis verwendet die EventHandler-Klasse für den Delegattyp und die EventArgs-Klasse für die Ereignisdaten.

  3. Legen Sie das OnClick-Attribut im Button-Element auf die Ereignishandlermethode fest.

    <asp:Button
            id = "Button" OnClick = "Button_Click" Text = "Click Me" 
            runat = server/>
    
    HinweisHinweis

    Ein Entwickler einer Web Forms-Anwendung kann das Ereignis, wie dargestellt, deklarativ verknüpfen, ohne den Delegaten direkt zu bearbeiten.Das ASP.NET-Seitenframework generiert Code, der eine Instanz von EventHandler erstellt, die auf Button_Click verweist. Diese Delegatinstanz wird dem Click-Ereignis der Button-Instanz hinzufügt.

Beispiel

Die folgende Web Forms-Seite behandelt das Click-Ereignis von Button, um die Hintergrundfarbe von TextBox zu ändern.

SicherheitshinweisSicherheitshinweis

Dieses Beispiel enthält ein Textfeld, das eine Benutzereingabe akzeptiert. Diese stellt ein potenzielles Sicherheitsrisiko dar.Standardmäßig stellt die ASP.NET-Seite sicher, dass die Benutzereingabe keine Skript- oder HTML-Elemente enthält.Weitere Informationen finden Sie unter Übersicht über Skriptangriffe.

<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>

Kompilieren des Codes

Wenn Sie ausprobieren möchten, wie die Ereignisbehandlung in Web Forms funktioniert, speichern Sie die Beispielseite in einer Datei mit der Erweiterung .aspx (diese kennzeichnet die Datei als ASP.NET-Seite), und stellen Sie sie im virtuellen Stammverzeichnis von IIS bereit.

Siehe auch

Konzepte

Ereignisse und Delegaten

Behandeln von Ereignissen

Auslösen eines Ereignisses

Weitere Ressourcen

Behandeln und Auslösen von Ereignissen