Home   Cover Cover Cover Cover
 

Ereignisverfolgung in einem Web-Formular


Zu Abschnitt 6.3 des Buchs

Dieses Beispiel zeigt, welche Ereignisse beim Laden einer Seite sowie beim Klicken eines Buttons ausgelöst werden. Als Ausgangspunkt verwenden wir die Adder-Seite aus Abschnitt 6.2 des Buchs. Hier ist nochmals ihr aspx-Code:

../../samples/6/EventTracing.aspx
<%@ Page Language="C#" Inherits="AdderPage" Src="EventTracing.aspx.cs"
  AutoEventWireup="true" %>
<html>
  <head> <title>Kassenstand</title> </head>
  <body>
    <form method="post" Runat="server">
      <b>Kassenstand:</b>
      <asp:Label ID="total" Runat="server"> 0 </asp:Label>
      Euro<br><br>
      <asp:TextBox ID="amount" Value="0" Runat="server" />
      <asp:Button ID="ok" Text="Einzahlen" Runat="server" OnInit="ButtonInit" />
      <br><br>
      <asp:Label ID="trace" Runat="server"/>
    </form>
  </body>
</html>

Die Hintergrundseite enthält den Code, der die Trace-Hilfsdrucke erzeugt:

../../samples/6/EventTracing.aspx.cs
using System;
using System.Web.UI;
using System.Web.UI.WebControls;

public class AdderPage : Page {
  protected Label total;
  protected TextBox amount;
  protected Button ok;
  protected Label trace;

  private void Put(string s) { trace.Text += s + "
"; } //------ Page events public void Page_Init(object sender, EventArgs e){ Put("Page.Init "); ok.Load += new EventHandler(ButtonLoad); ok.Click += new EventHandler(ButtonClick); ok.PreRender += new EventHandler(ButtonPreRender); ok.Unload += new EventHandler(ButtonUnload); } public void Page_Load(object sender, EventArgs e) { Put("
Page.Load"); } public void Page_PreRender(object sender, EventArgs e) { Put("Page.PreRender"); } public void Page_Unload(object sender, EventArgs e) { Put("Page.Unload"); } //------ Button events public void ButtonClick(object sender, EventArgs e) { Put("Button.Click"); int totalVal = Convert.ToInt32(total.Text); int amountVal = Convert.ToInt32(amount.Text); total.Text = (totalVal + amountVal).ToString(); } public void ButtonInit(object sender, EventArgs e) { Put("Button.Init"); } public void ButtonLoad(object sender, EventArgs e) { Put("Button.Load"); } public void ButtonPreRender(object sender, EventArgs e) { Put("Button.PreRender"); } public void ButtonUnload(object sender, EventArgs e) { Put("Button.Unload"); } }

Ausführung

Klicken Sie auf den untenstehenden Link und anschließend auf den Button in der Webseite. Sie können beobachten, welche Ereignisse auftreten.

   http://dotnet.jku.at/book/samples/6/EventTracing.aspx