Deklarative Syntax des HtmlForm-Serversteuerelements

[Dieses Dokument dient lediglich Vorschauzwecken und kann in späteren Versionen geändert werden. Leere Themen sind als Platzhalter enthalten.]

Generiert ein serverseitiges Steuerelement, das dem <form>-HTML-Element zugeordnet wird und die Erstellung eines Containers für Elemente auf einer Webseite ermöglicht.

<form 
    DefaultButton="string"
    DefaultFocus="string"
    EnableViewState="False|True"
    Id="string"
    SubmitDisabledControls="False|True"
    Visible="True|False"
    OnDataBinding="OnDataBinding event handler"
    OnDisposed="OnDisposed event handler"
    OnInit="OnInit event handler"
    OnLoad="OnLoad event handler"
    OnPreRender="OnPreRender event handler"
    OnUnload="OnUnload event handler"
    runat="server"
    >
        <!--Other controls, input forms, and so on.--> 
</form>

Hinweise

Verwenden Sie das HtmlForm-Steuerelement, um das <form>-HTML-Element zu programmieren. Um Postbackdienste nutzen zu können, müssen alle Web Forms-Steuerelemente (HTML-Steuerelemente, Websteuerelemente, Benutzersteuerelemente und benutzerdefinierte Steuerelemente) zwischen wohlgeformten Starttags und Endtags des HtmlForm-Steuerelements geschachtelt sein. Wenn die Tags nicht korrekt abgeschlossen sind, wird das Element nicht in ASP.NET erkannt. Das Element wird entweder ignoriert, oder ein Kompilierungsfehler tritt auf, je nachdem, wie das Element generiert wurde.

Hinweis

Sie können in eine Web Forms-Seite nur ein HtmlForm-Steuerelement einfügen.

Standardmäßig ist das method-Attribut des HtmlForm-Steuerelements auf POST festgelegt. Sie können das method-Attribut Ihren Bedürfnissen entsprechend anpassen. Wenn Sie allerdings das method-Attribut auf einen anderen Wert festlegen als GET oder POST, kann dies zum Abbruch des Ansichtszustands und der von ASP.NET bereitstellten Postbackdienste führen.

Hinweis

Das action-Attribut wird immer auf die URL der Seite festgelegt.Das action-Attribut kann nicht geändert werden. Daher ist ein Postback nur auf die Seite selbst möglich.

Hinweis

Das name-Attribut für form-Elemente ist in XHTML 1.1 veraltet.In ASP.NET 4 wird das name-Attribut daher nicht von diesem Steuerelement gerendert.

Beispiel

Das folgende Beispiel veranschaulicht drei HtmlButton-Steuerelemente mit einem eigenen OnServerClick-Handler für jede Schaltfläche. Jedes dieser Ereignisse verursacht einen Postback zum Server (das HtmlForm-Steuerelement wird für jedes Szenario benötigt, in dem ein Postback auftritt). Dieses Beispiel veranschaulicht auch, dass nur ein HtmlForm-Steuerelement auf einer Web Forms-Seite zulässig ist, z. B. ein Formular, das mehrere Ereignisse unterstützt. Wenn Sie mehr als ein HtmlForm-Steuerelement einfügen, löst .NET Framework eine Ausnahme aus.

<%@ Page Language="VB" AutoEventWireup="True" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>HtmlForm Control</title>

   <script runat="server">
      Sub Button1_OnClick(Source As Object, e As EventArgs)
         Span1.InnerHtml = "You clicked Button1"
      End Sub

      Sub Button2_OnClick(Source As Object, e As EventArgs)
         Span2.InnerHtml = "You clicked Button2"
      End Sub

      Sub Button3_OnClick(Source As Object, e As EventArgs)
         Span3.InnerHtml = "You clicked Button3"
      End Sub
   </script>

</head>
<body>

   <h3>HtmlForm Sample</h3>

   <form id="ServerForm" runat="server">     
      <button id="Button1" runat="server"
              onserverclick="Button1_OnClick">
         Button1
      </button>
      &nbsp;&nbsp;
      <span id="Span1" runat="server" />
      <p />
      <button id="Button2" runat="server"
              onserverclick="Button2_OnClick">
         Button2
      </button>
      &nbsp;&nbsp;
      <span id="Span2" runat="server" />
      <p />
      <button id="Button3" runat="server"
              onserverclick="Button3_OnClick">
         Button3
      </button>
      &nbsp;&nbsp;
      <span id="Span3" runat="server" />
   </form>
</body>
</html>
<%@ Page Language="C#" AutoEventWireup="True" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>HtmlForm Control</title>

    <script runat="server">
       void Button1_OnClick(object Source, EventArgs e) 
       {
          Span1.InnerHtml="You clicked Button1";
       }
       void Button2_OnClick(object Source, EventArgs e) 
       {
          Span2.InnerHtml="You clicked Button2";
       }
       void Button3_OnClick(object Source, EventArgs e) 
       {
          Span3.InnerHtml="You clicked Button3";
       }
    </script>

</head>
<body>

   <h3>HtmlForm Sample</h3>

   <form id="ServerForm" runat="server">     
      <button id="Button1" runat="server"
              onserverclick="Button1_OnClick">
         Button1
      </button>
      &nbsp;&nbsp;
      <span id="Span1" runat="server" />
      <p />
      <button id="Button2" runat="server"
              onserverclick="Button2_OnClick">
         Button2
      </button>
      &nbsp;&nbsp;
      <span id="Span2" runat="server" />
      <p />
      <button id="Button3" runat="server"
              onserverclick="Button3_OnClick">
         Button3
      </button>
      &nbsp;&nbsp;
      <span id="Span3" runat="server" />
   </form>
</body>
</html>

Siehe auch

Referenz

HtmlForm

Weitere Ressourcen

HTML-Serversteuerelemente