次の方法で共有


HtmlForm クラス

サーバーの HTML <form> 要素へのプログラムによるアクセスを可能にします。

名前空間: System.Web.UI.HtmlControls
アセンブリ: System.Web (system.web.dll 内)

構文

'宣言
Public Class HtmlForm
    Inherits HtmlContainerControl
'使用
Dim instance As HtmlForm
public class HtmlForm : HtmlContainerControl
public ref class HtmlForm : public HtmlContainerControl
public class HtmlForm extends HtmlContainerControl
public class HtmlForm extends HtmlContainerControl
適用できません。

解説

HtmlForm コントロールは Web フォーム ページのサーバー コントロールのコンテナです。サーバーにポストバックするすべてのサーバー コントロールは HtmlForm コントロールの開始タグと終了タグの間に配置する必要があります。

メモメモ :

ASP.NET では、1 つの HtmlForm コントロールしか Web フォーム ページでアクティブにできません。Web フォーム ページに複数のアクティブな HtmlForm コントロールがある場合、ページを要求すると、共通言語ランタイムから System.Web.HttpException 例外がスローされます。ただし、常にアクティブなのは 1 つの View オブジェクトだけなので、各 View オブジェクトに 1 つの HtmlForm コントロールが格納されている MultiView コントロールを使用できます。

このプロパティを設定すると HtmlForm コントロールの動作を制御できます。フォームのデータのエンコードの種類を指定するには、Enctype プロパティを設定します。ブラウザが処理サーバーにフォーム データをポストバックするときに使用するメソッド (GET または POST) は、Method プロパティを設定して指定します。

注意に関するメモ注意 :

既定では、Method プロパティは POST に設定されます。このプロパティの値は GET に変更できます。ただし、変更すると、組み込み状態が失われ、ASP.NET ページ フレームワークによって提供されるサービスがポストバックされることがあります。

IButtonControl インターフェイスを実装するコントロールを、別のターゲット ページにポストバックするように構成できます。これはページ間ポスティングといいます。詳細については、「ASP.NET Web ページにおけるページ間ポスティング」を参照してください。

HtmlForm のインスタンスの初期プロパティ値の一覧については、HtmlForm コンストラクタのトピックを参照してください。

トピック 場所
方法 : ASP.NET 構文を使用して HTML サーバー コントロールを Web ページに追加する Visual Studio ASP .NET での Web アプリケーションの作成
方法 : コントロール コレクションをウォークしてページの Web フォーム コントロールを検索する Visual Studio ASP .NET での Web アプリケーションの作成
方法 : HTML サーバー コントロール プロパティをプログラムで設定する Visual Studio ASP .NET での Web アプリケーションの作成
方法 : ASP.NET 構文を使用して HTML サーバー コントロールを Web ページに追加する Visual Studio ASP .NET での Web アプリケーションの作成
方法 : コントロール コレクションをウォークしてページの Web フォーム コントロールを検索する Visual Studio ASP .NET での Web アプリケーションの作成
方法 : HTML サーバー コントロール プロパティをプログラムで設定する Visual Studio ASP .NET での Web アプリケーションの作成
方法 : ASP.NET 構文を使用して HTML サーバー コントロールを Web ページに追加する ASP .NET Web アプリケーションの作成
方法 : コントロール コレクションをウォークしてページの Web フォーム コントロールを検索する ASP .NET Web アプリケーションの作成
方法 : HTML サーバー コントロール プロパティをプログラムで設定する ASP .NET Web アプリケーションの作成

使用例

HtmlForm クラスを使用して単純なフォームを作成する方法を次のコード例に示します。

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

<script runat="server">

  Protected Sub AddButton_Click(ByVal sender As Object, ByVal e As EventArgs)

    Dim Answer As Integer
    
    ' Calculate and display the result.
    Answer = Convert.ToInt32(Value1.Value) + Convert.ToInt32(Value2.Value)
    AnswerMessage.InnerHtml = Answer.ToString()

  End Sub

</script>

<html xmlns="http://www.w3.org/1999/xhtml" > 
<head>
  <title>HtmlForm Example</title>
</head>
<body>

   <form method="Post"
         enctype="application/x-www-form-urlencoded" 
         runat="server" id="myform">

      <h3> HtmlForm Example </h3>








      <table>
         <tr>
            <td colspan="5">
               Enter integer values into the text boxes. <br />
               Click the Add button to add the two values. <br />
               Click the Reset button to reset the text boxes.
            </td>
         </tr>
         <tr>
            <td colspan="5">
               &nbsp;
            </td>
         </tr>
         <tr align="center">
            <td>
               <input id="Value1"
                      type="Text"
                      size="2"
                      maxlength="3"
                      value="1"
                      runat="server"/>
            </td>
            <td>
               + 
            </td>
            <td>
               <input id="Value2"
                      type="Text"
                      size="2"
                      maxlength="3"
                      value="1"
                      runat="server"/>
            </td>
            <td>
               =
            </td>
            <td>
               <span id="AnswerMessage"
                     runat="server"/>
            </td>
         </tr>
         <tr>
            <td colspan="2">
               <asp:RequiredFieldValidator
                    ID="Value1RequiredValidator"
                    ControlToValidate="Value1"
                    ErrorMessage="Please enter a value.<br />"
                    Display="Dynamic"
                    runat="server"/>
               <asp:CompareValidator
                    ID="Value1MinCompareValidator"
                    ControlToValidate="Value1"
                    Operator="LessThan"
                    Type="Integer"
                    ValueToCompare="100"
                    ErrorMessage="Please enter an integer less than 100.<br />"
                    Display="Dynamic"
                    runat="server"/>
               <asp:CompareValidator
                    ID="Value1MaxCompareValidator"
                    ControlToValidate="Value1"
                    Operator="GreaterThan"
                    Type="Integer"
                    ValueToCompare="0"
                    ErrorMessage="Please enter an integer greater than 0.<br />"
                    Display="Dynamic"
                    runat="server"/>
            </td>
            <td colspan="2">
               <asp:RequiredFieldValidator
                    ID="Value2RequiredValidator"
                    ControlToValidate="Value2"
                    ErrorMessage="Please enter a value.<br />"
                    Display="Dynamic"
                    runat="server"/>
               <asp:CompareValidator
                    ID="Value2MinCompareValidator"
                    ControlToValidate="Value2"
                    Operator="LessThan"
                    Type="Integer"
                    ValueToCompare="100"
                    ErrorMessage="Please enter an integer less than 100.<br />"
                    Display="Dynamic"
                    runat="server"/>
               <asp:CompareValidator
                    ID="Value2MaxCompareValidator"
                    ControlToValidate="Value2"
                    Operator="GreaterThan"
                    Type="Integer"
                    ValueToCompare="0"
                    ErrorMessage="Please enter an integer greater than 0.<br />"
                    Display="Dynamic"
                    runat="server"/>
            </td>
            <td>
               &nbsp;
            </td>
         </tr>
         <tr align="center">
            <td colspan="4">
               <input type="Submit"
                      name="AddButton"
                      value="Add"
                      onserverclick="AddButton_Click"
                      runat="server"/>
               &nbsp;&nbsp;&nbsp;
               <input type="Reset"
                      name="AddButton"
                      value="Reset"
                      runat="server"/>
            </td>
            <td>
               &nbsp;
            </td>
         </tr>
      </table>


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

<script runat="server">

    protected void AddButton_Click(Object sender, EventArgs e)
    {

        int Answer;

        // Calculate and display the result.
        Answer = Convert.ToInt32(Value1.Value) + Convert.ToInt32(Value2.Value);
        AnswerMessage.InnerHtml = Answer.ToString();

    }
     
</script>

<html xmlns="http://www.w3.org/1999/xhtml" > 
<head>
  <title>HtmlForm Example</title>
</head>
<body>

   <form method="Post"
         enctype="application/x-www-form-urlencoded" 
         runat="server" id="myform">

      <h3> HtmlForm Example </h3>








      <table>
         <tr>
            <td colspan="5">
               Enter integer values into the text boxes. <br />
               Click the Add button to add the two values. <br />
               Click the Reset button to reset the text boxes.
            </td>
         </tr>
         <tr>
            <td colspan="5">
               &nbsp;
            </td>
         </tr>
         <tr align="center">
            <td>
               <input id="Value1"
                      type="Text"
                      size="2"
                      maxlength="3"
                      value="1"
                      runat="server"/>
            </td>
            <td>
               + 
            </td>
            <td>
               <input id="Value2"
                      type="Text"
                      size="2"
                      maxlength="3"
                      value="1"
                      runat="server"/>
            </td>
            <td>
               =
            </td>
            <td>
               <span id="AnswerMessage"
                     runat="server"/>
            </td>
         </tr>
         <tr>
            <td colspan="2">
               <asp:RequiredFieldValidator
                    ID="Value1RequiredValidator"
                    ControlToValidate="Value1"
                    ErrorMessage="Please enter a value.<br />"
                    Display="Dynamic"
                    runat="server"/>
               <asp:CompareValidator
                    ID="Value1MinCompareValidator"
                    ControlToValidate="Value1"
                    Operator="LessThan"
                    Type="Integer"
                    ValueToCompare="100"
                    ErrorMessage="Please enter an integer less than 100.<br />"
                    Display="Dynamic"
                    runat="server"/>
               <asp:CompareValidator
                    ID="Value1MaxCompareValidator"
                    ControlToValidate="Value1"
                    Operator="GreaterThan"
                    Type="Integer"
                    ValueToCompare="0"
                    ErrorMessage="Please enter an integer greater than 0.<br />"
                    Display="Dynamic"
                    runat="server"/>
            </td>
            <td colspan="2">
               <asp:RequiredFieldValidator
                    ID="Value2RequiredValidator"
                    ControlToValidate="Value2"
                    ErrorMessage="Please enter a value.<br />"
                    Display="Dynamic"
                    runat="server"/>
               <asp:CompareValidator
                    ID="Value2MinCompareValidator"
                    ControlToValidate="Value2"
                    Operator="LessThan"
                    Type="Integer"
                    ValueToCompare="100"
                    ErrorMessage="Please enter an integer less than 100.<br />"
                    Display="Dynamic"
                    runat="server"/>
               <asp:CompareValidator
                    ID="Value2MaxCompareValidator"
                    ControlToValidate="Value2"
                    Operator="GreaterThan"
                    Type="Integer"
                    ValueToCompare="0"
                    ErrorMessage="Please enter an integer greater than 0.<br />"
                    Display="Dynamic"
                    runat="server"/>
            </td>
            <td>
               &nbsp;
            </td>
         </tr>
         <tr align="center">
            <td colspan="4">
               <input type="Submit"
                      name="AddButton"
                      value="Add"
                      onserverclick="AddButton_Click"
                      runat="server"/>
               &nbsp;&nbsp;&nbsp;
               <input type="Reset"
                      name="AddButton"
                      value="Reset"
                      runat="server"/>
            </td>
            <td>
               &nbsp;
            </td>
         </tr>
      </table>


   </form>
</body>
</html>

.NET Framework のセキュリティ

  • AspNetHostingPermission  (ホスト環境での動作に必要なアクセス許可)要求値 : LinkDemand; アクセス許可値 : Minimal
  • AspNetHostingPermission  (ホスト環境での動作に必要なアクセス許可)要求値 : InheritanceDemand; アクセス許可値 : Minimal

継承階層

System.Object
   System.Web.UI.Control
     System.Web.UI.HtmlControls.HtmlControl
       System.Web.UI.HtmlControls.HtmlContainerControl
        System.Web.UI.HtmlControls.HtmlForm

スレッド セーフ

この型の public static (Visual Basicでは共有) メンバはすべて,スレッド セーフです。インスタンス メンバの場合は,スレッド セーフであるとは限りません。

プラットフォーム

Windows 98,Windows Server 2000 SP4,Windows CE,Windows Millennium Edition,Windows Mobile for Pocket PC,Windows Mobile for Smartphone,Windows Server 2003,Windows XP Media Center Edition,Windows XP Professional x64 Edition,Windows XP SP2,Windows XP Starter Edition

Microsoft .NET Framework 3.0 は Windows Vista,Microsoft Windows XP SP2,および Windows Server 2003 SP1 でサポートされています。

バージョン情報

.NET Framework

サポート対象 : 3.0,2.0,1.1,1.0

参照

関連項目

HtmlForm メンバ
System.Web.UI.HtmlControls 名前空間
HtmlContainerControl
Enctype
Method

その他の技術情報

HtmlForm サーバー コントロール宣言構文
HTML サーバー コントロール
ASP.NET Web ページにおけるページ間ポスティング