Share via


Sintaxe declarativa do controle de servidor de HtmlForm

Cria um controle de servidor que mapeia para o <form> elemento HTML e permite que você crie um contêiner para elementos em uma página da Web.

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

Comentários

Use o HtmlForm o controle para programar o HTML para <form> elemento. Para tirar proveito dos serviços de postback, todos os formulários da Web controles, controla se o HTML, controles da Web, controles de usuário ou controles personalizados, devem ser aninhados entre bem-formado abrindo e fechando as marcas da HtmlForm de controle. Se as marcas não estão fechadas adequadamente, ASP.NET não reconhece o elemento. O elemento será ignorado ou um erro de compilação ocorrerá, dependendo de como o elemento é formado.

Observação

Você não pode incluir mais de um HtmlForm controle em uma única página de Web Forms.

Por padrão, o HtmlForm do controle method atributo está definido como POST. Você pode personalizar o method atributo para atender às suas necessidades, mas a configuração do method atributo para um valor diferente de GET ou POST pode quebrar o estado de exibição internos e postback serviços fornecidos pelo ASP.NET.

Observação

O action atributo é sempre definido para o URL da página em si.O action atributo não pode ser alterado; Portanto, você pode postar apenas voltar para a própria página.

Observação

O name atributo para form elementos é preterido no XHTML 1.1.Portanto, esse controle não processa o o atributoname no ASP.NET 4.

Exemplo

O exemplo a seguir mostra três HtmlButton controles com um separado OnServerClick manipulador para cada botão. Cada um desses eventos faz com que um postback para o servidor (o HtmlForm controle é necessário para qualquer cenário em que ocorre um postback). Este exemplo também demonstra que apenas um HtmlForm o controle é permitido em uma página de Web Forms, incluindo um formulário que suporta vários eventos. Se você incluir mais de um controle deHtmlForm , o.NET Framework lança uma exceção.

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

Consulte também

Referência

HtmlForm

Outros recursos

HTML Server Controls