HtmlForm 서버 컨트롤 선언 구문

업데이트: 2007년 11월

<form> HTML 요소에 매핑되는 서버측 컨트롤을 만들어 웹 페이지의 요소에 대해 사용할 수 있는 컨테이너를 만들 수 있도록 합니다.

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

설명

HtmlForm 컨트롤을 사용하여 HTML <form> 요소를 프로그래밍할 수 있습니다. 다시 게시 서비스를 사용하려면 컨트롤 형식이 HTML 컨트롤, 웹 컨트롤, 사용자 정의 컨트롤 또는 사용자 지정 컨트롤인지에 관계없이 모든 Web Forms 컨트롤이 HtmlForm 컨트롤의 올바른 여는 태그와 닫는 태그 사이에 중첩되어야 합니다. 태그를 제대로 닫지 않으면 ASP.NET에서 요소를 인식하지 못하여 요소의 형식에 따라 해당 요소가 무시되거나 컴파일 오류가 발생할 수 있습니다.

참고

단일 Web Forms 페이지에 HtmlForm 컨트롤을 두 개 이상 사용할 수 없습니다.

기본적으로 HtmlForm 컨트롤의 method 특성은 POST로 설정되어 있습니다. 필요에 따라 method 특성을 사용자 지정할 수 있지만 method 특성을 GET 또는 POST 이외의 다른 값으로 설정하면 ASP.NET에서 제공하는 기본 뷰 상태와 다시 게시 서비스가 작동하지 않을 수 있습니다.

참고

action 특성은 항상 페이지 자체의 URL로 설정됩니다. action 특성은 변경할 수 없으므로 페이지 자체에만 다시 게시할 수 있습니다.

예제

다음 예제에서는 각 단추에 대해 별도의 OnServerClick 처리기를 사용하는 HtmlButton 컨트롤 세 개를 보여 줍니다. 이러한 각 이벤트를 실행하면 서버에 다시 게시되고 다시 게시가 발생하는 시나리오에는 HtmlForm 컨트롤이 필요합니다. 또한 이 예제에서는 여러 이벤트를 지원하는 폼을 포함하여 Web Forms 페이지에 HtmlForm 컨트롤을 하나만 사용할 수 있음을 보여 줍니다. HtmlForm 컨트롤을 두 개 이상 사용하면 .NET Framework에서 예외를 throw합니다.

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

참고 항목

참조

HtmlForm

기타 리소스

HTML 서버 컨트롤