Control クラス

定義

すべての ASP.NET サーバー コントロールによって共有されるプロパティ、メソッド、およびイベントを定義します。

public ref class Control : IDisposable, System::ComponentModel::IComponent, System::Web::UI::IDataBindingsAccessor, System::Web::UI::IParserAccessor
public ref class Control : IDisposable, System::ComponentModel::IComponent, System::Web::UI::IControlBuilderAccessor, System::Web::UI::IControlDesignerAccessor, System::Web::UI::IDataBindingsAccessor, System::Web::UI::IExpressionsAccessor, System::Web::UI::IParserAccessor, System::Web::UI::IUrlResolutionService
public class Control : IDisposable, System.ComponentModel.IComponent, System.Web.UI.IDataBindingsAccessor, System.Web.UI.IParserAccessor
[System.ComponentModel.Bindable(true)]
[System.Web.UI.Themeable(false)]
public class Control : IDisposable, System.ComponentModel.IComponent, System.Web.UI.IControlBuilderAccessor, System.Web.UI.IControlDesignerAccessor, System.Web.UI.IDataBindingsAccessor, System.Web.UI.IExpressionsAccessor, System.Web.UI.IParserAccessor, System.Web.UI.IUrlResolutionService
type Control = class
    interface IComponent
    interface IDisposable
    interface IParserAccessor
    interface IDataBindingsAccessor
[<System.ComponentModel.Bindable(true)>]
[<System.Web.UI.Themeable(false)>]
type Control = class
    interface IComponent
    interface IDisposable
    interface IParserAccessor
    interface IUrlResolutionService
    interface IDataBindingsAccessor
    interface IControlBuilderAccessor
    interface IControlDesignerAccessor
    interface IExpressionsAccessor
Public Class Control
Implements IComponent, IDataBindingsAccessor, IDisposable, IParserAccessor
Public Class Control
Implements IComponent, IControlBuilderAccessor, IControlDesignerAccessor, IDataBindingsAccessor, IDisposable, IExpressionsAccessor, IParserAccessor, IUrlResolutionService
継承
Control
派生
属性
実装

次の例では、クラスから派生するカスタム サーバー コントロールを Control 示します。 このクラスは InnerContent メソッドを Control.Render オーバーライドし、クラスにページに子コントロールがあるかどうかを確認し、コントロールの最初の子がリテラル コントロールであるかどうかを判断します。 これらの両方の条件が満たされた場合、オーバーライドされたメソッドは HTML 文字列 <H2>Your Message:、リテラル コントロールの内容、および終了</H2>タグを Web Forms ページに書き込みます。

重要

この例には、ユーザー入力を受け付けるテキスト ボックスがあります。これにより、セキュリティが脆弱になる可能性があります。 既定では、ASP.NET Web ページによって、ユーザー入力にスクリプトまたは HTML 要素が含まれていないかどうかが検証されます。 詳細については、「スクリプトによる攻略の概要」を参照してください。

using System;
using System.Web;
using System.Web.UI;

namespace SimpleControlSamples {

    public class InnerContent : Control {
    [System.Security.Permissions.PermissionSet(System.Security.Permissions.SecurityAction.Demand, Name="Execution")]
       protected override void Render(HtmlTextWriter output) {

           if ( (HasControls()) && (Controls[0] is LiteralControl) ) {
               output.Write("<H2>Your message : ");
               Controls[0].RenderControl(output);
               output.Write("</H2>");
           }
       }
    }
}

Option Explicit
Option Strict

Imports System.Web
Imports System.Web.UI

Namespace SimpleControlSamples
    Public Class InnerContent
        Inherits Control
        <System.Security.Permissions.PermissionSetAttribute(System.Security.Permissions.SecurityAction.Demand, Name:="Execution")> _
        Protected Overrides Sub Render(output As HtmlTextWriter)
            
            If HasControls() And TypeOf Controls(0) Is LiteralControl Then
                output.Write("<H2>Your message : ")
                Controls(0).RenderControl(output)
                output.Write("</H2>")
            End If
        End Sub
    End Class
End Namespace 'SimpleControlSamples

注釈

これは、カスタム ASP.NET サーバー コントロールを開発するときに派生する主なクラスです。 Control には、ユーザー インターフェイス (UI) 固有の機能がありません。 UI を持たないコントロールを作成する場合、または独自の UI をレンダリングする他のコントロールを組み合わせる場合は、から Control派生します。 UI を持つコントロールを作成する場合は、カスタム コントロールの適切な開始点をSystem.Web.UI.WebControls提供する名前空間から、またはその任意のコントロールからWebControl派生します。

このControlクラスは、カスタム コントロール、ユーザー コントロール、ページを含むすべての ASP.NET サーバー コントロールの基本クラスです。 ASP.NET ページは、クラスからControl継承し、拡張子が .aspx のファイルの要求を処理するクラスのインスタンスPageです。

このクラスは Control 、Web アプリケーションのユーザー インターフェイスの一部として直接または間接的に使用できます。そのため、セキュリティで保護されたコードを記述し、アプリケーションをセキュリティで保護するためのベスト プラクティスに従って確認する必要があります。

これらのトピックの一般的な情報については、「 Web アプリケーションのセキュリティ脅威の概要」、 セキュリティ ポリシーのベスト プラクティス、および 主要なセキュリティの概念を参照してください。 詳細については、「標準コントロールのセキュリティ保護」「方法: セーフエラー メッセージを表示する」、方法: 文字列に HTML エンコードを適用して Web アプリケーションでスクリプトの悪用から保護する検証コントロールの概要を参照してください。

コンストラクター

Control()

Control クラスの新しいインスタンスを初期化します。

プロパティ

Adapter

コントロール用のブラウザー固有のアダプターを取得します。

AppRelativeTemplateSourceDirectory

このコントロールが含まれている Page オブジェクトまたは UserControl オブジェクトのアプリケーション相対の仮想ディレクトリを取得または設定します。

BindingContainer

このコントロールのデータ バインディングを格納しているコントロールを取得します。

ChildControlsCreated

サーバー コントロールの子コントロールが作成されたかどうかを示す値を取得します。

ClientID

ASP.NET によって生成される HTML マークアップのコントロール ID を取得します。

ClientIDMode

ClientID プロパティの値を生成するために使用されるアルゴリズムを取得または設定します。

ClientIDSeparator

ClientID プロパティで使用される区切り記号を表す文字値を取得します。

Context

現在の Web 要求に対するサーバー コントロールに関連付けられている HttpContext オブジェクトを取得します。

Controls

UI 階層内の指定されたサーバー コントロールの子コントロールを表す ControlCollection オブジェクトを取得します。

DataItemContainer

名前付けコンテナーが IDataItemContainer を実装している場合、名前付けコンテナーへの参照を取得します。

DataKeysContainer

名前付けコンテナーが IDataKeysControl を実装している場合、名前付けコンテナーへの参照を取得します。

DesignMode

コントロールがデザイン サーフェイスで使用されているかどうかを示す値を取得します。

EnableTheming

テーマがこのコントロールに適用されるかどうかを示す値を取得または設定します。

EnableViewState

要求元クライアントに対して、サーバー コントロールがそのビュー状態と、そこに含まれる任意の子のコントロールのビュー状態を保持するかどうかを示す値を取得または設定します。

Events

コントロールのイベント ハンドラー デリゲートのリストを取得します。 このプロパティは読み取り専用です。

HasChildViewState

現在のサーバー コントロールの子コントロールが、保存されたビューステートの設定を持っているかどうかを示す値を取得します。

ID

サーバー コントロールに割り当てられたプログラム ID を取得または設定します。

IdSeparator

コントロール ID を区別するために使用する文字を取得します。

IsChildControlStateCleared

このコントロールに含まれているコントロールに、コントロールの状態が設定されているかどうかを示す値を取得します。

IsTrackingViewState

サーバー コントロールがビューステートの変更を保存しているかどうかを示す値を取得します。

IsViewStateEnabled

このコントロールでビューステートが有効かどうかを示す値を取得します。

LoadViewStateByID

コントロールがインデックスではなく ID によりビューステートの読み込みを行うかどうかを示す値を取得します。

NamingContainer

同じ ID プロパティ値を持つ複数のサーバー コントロールを区別するための一意の名前空間を作成する、サーバー コントロールの名前付けコンテナーへの参照を取得します。

Page

サーバー コントロールを含んでいる Page インスタンスへの参照を取得します。

Parent

ページ コントロールの階層構造における、サーバー コントロールの親コントロールへの参照を取得します。

RenderingCompatibility

レンダリングされる HTML と互換性がある ASP.NET のバージョンを表す値を取得します。

Site

デザイン サーフェイスに現在のコントロールを表示するときに、このコントロールをホストするコンテナーに関する情報を取得します。

SkinID

コントロールに適用するスキンを取得または設定します。

TemplateControl

このコントロールを格納しているテンプレートへの参照を取得または設定します。

TemplateSourceDirectory

現在のサーバー コントロールを格納している Page または UserControl の仮想ディレクトリを取得します。

UniqueID

階層構造で修飾されたサーバー コントロールの一意の ID を取得します。

ValidateRequestMode

ブラウザーからのクライアント入力の安全性をコントロールで調べるかどうかを示す値を取得または設定します。

ViewState

同一のページに対する複数の要求にわたって、サーバー コントロールのビューステートを保存し、復元できるようにする状態情報のディクショナリを取得します。

ViewStateIgnoresCase

StateBag オブジェクトが大文字小文字を区別しないかどうかを示す値を取得します。

ViewStateMode

このコントロールのビューステート モードを取得または設定します。

Visible

サーバー コントロールがページ上の UI としてレンダリングされているかどうかを示す値を取得または設定します。

メソッド

AddedControl(Control, Int32)

子コントロールが Control オブジェクトの Controls コレクションに追加された後に呼び出されます。

AddParsedSubObject(Object)

XML または HTML のいずれかの要素が解析されたことをサーバー コントロールに通知し、サーバー コントロールの ControlCollection オブジェクトに要素を追加します。

ApplyStyleSheetSkin(Page)

ページのスタイル シートに定義されたスタイル プロパティをコントロールに適用します。

BeginRenderTracing(TextWriter, Object)

レンダリング データのデザイン時のトレースを開始します。

BuildProfileTree(String, Boolean)

ページのトレースが有効な場合、サーバー コントロールに関する情報を収集し、これを表示するために Trace プロパティに渡します。

ClearCachedClientID()

キャッシュされた ClientID 値を null に設定します。

ClearChildControlState()

サーバー コントロールのすべての子コントロールについて、コントロールの状態情報を削除します。

ClearChildState()

サーバー コントロールのすべての子コントロールのビューステート情報およびコントロールの状態情報を削除します。

ClearChildViewState()

サーバー コントロールのすべての子コントロールのビューステート情報を削除します。

ClearEffectiveClientIDMode()

現在のコントロール インスタンスおよびすべての子コントロールの ClientIDMode プロパティを Inherit に設定します。

CreateChildControls()

ASP.NET ページ フレームワークによって呼び出され、ポストバックまたはレンダリングの準備として、合成ベースの実装を使うサーバー コントロールに対し、それらのコントロールに含まれる子コントロールを作成するように通知します。

CreateControlCollection()

サーバー コントロールの子コントロール (リテラルとサーバーの両方) を保持する新しい ControlCollection オブジェクトを作成します。

DataBind()

呼び出されたサーバー コントロールとそのすべての子コントロールにデータ ソースをバインドします。

DataBind(Boolean)

DataBinding イベントを発生させるオプションを指定して、呼び出されたサーバー コントロールとそのすべての子コントロールにデータ ソースをバインドします。

DataBindChildren()

データ ソースをサーバー コントロールの子コントロールにバインドします。

Dispose()

サーバー コントロールが、メモリから解放される前に最終的なクリーンアップを実行できるようにします。

EndRenderTracing(TextWriter, Object)

レンダリング データのデザイン時のトレースを終了します。

EnsureChildControls()

サーバー コントロールに子コントロールが含まれているかどうかを確認します。 含まれていない場合、子コントロールを作成します。

EnsureID()

ID が割り当てられていないコントロールの ID を作成します。

Equals(Object)

指定されたオブジェクトが現在のオブジェクトと等しいかどうかを判断します。

(継承元 Object)
FindControl(String)

指定した id パラメーターを使用して、サーバー コントロールの現在の名前付けコンテナーを検索します。

FindControl(String, Int32)

指定した id および検索に役立つ pathOffset パラメーターに指定された整数を使用して、サーバー コントロールの現在の名前付けコンテナーを検索します。 この形式の FindControl メソッドはオーバーライドしないでください。

Focus()

コントロールに入力フォーカスを設定します。

GetDesignModeState()

コントロールのデザイン時データを取得します。

GetHashCode()

既定のハッシュ関数として機能します。

(継承元 Object)
GetRouteUrl(Object)

ルート パラメーターのセットに対応する URL を取得します。

GetRouteUrl(RouteValueDictionary)

ルート パラメーターのセットに対応する URL を取得します。

GetRouteUrl(String, Object)

ルート パラメーターのセットおよびルート名に対応する URL を取得します。

GetRouteUrl(String, RouteValueDictionary)

ルート パラメーターのセットおよびルート名に対応する URL を取得します。

GetType()

現在のインスタンスの Type を取得します。

(継承元 Object)
GetUniqueIDRelativeTo(Control)

指定されたコントロールの UniqueID プロパティのプレフィックス部分を返します。

HasControls()

サーバー コントロールに子コントロールが含まれているかどうかを確認します。

HasEvents()

コントロールまたは子コントロールに対してイベントが登録されているかどうかを示す値を返します。

IsLiteralContent()

サーバー コントロールがリテラルな内容だけを保持しているかどうかを決定します。

LoadControlState(Object)

SaveControlState() メソッドによって保存された前回のページ要求からコントロールの状態情報を復元します。

LoadViewState(Object)

SaveViewState() メソッドによって保存された前回のページ要求からビューステート情報を復元します。

MapPathSecure(String)

仮想パス (絶対パスまたは相対パス) の割り当て先の物理パスを取得します。

MemberwiseClone()

現在の Object の簡易コピーを作成します。

(継承元 Object)
OnBubbleEvent(Object, EventArgs)

サーバー コントロールのイベントをページの UI サーバー コントロールの階層構造に渡すかどうかを決定します。

OnDataBinding(EventArgs)

DataBinding イベントを発生させます。

OnInit(EventArgs)

Init イベントを発生させます。

OnLoad(EventArgs)

Load イベントを発生させます。

OnPreRender(EventArgs)

PreRender イベントを発生させます。

OnUnload(EventArgs)

Unload イベントを発生させます。

OpenFile(String)

ファイルの読み込みで使用される Stream を取得します。

RaiseBubbleEvent(Object, EventArgs)

イベントのソースおよびその情報をコントロールの親に割り当てます。

RemovedControl(Control)

Control オブジェクトの Controls コレクションから子コントロールが削除された後に呼び出されます。

Render(HtmlTextWriter)

提供されたクライアントに表示される内容を書き込む HtmlTextWriter オブジェクトに、サーバー コントロールの内容を送信します。

RenderChildren(HtmlTextWriter)

提供された HtmlTextWriter オブジェクトに対してサーバー コントロールの子のコンテンツを出力すると、クライアントで表示されるコンテンツが記述されます。

RenderControl(HtmlTextWriter)

指定の HtmlTextWriter オブジェクトにサーバー コントロールの内容を出力し、トレースが有効である場合はコントロールに関するトレース情報を保存します。

RenderControl(HtmlTextWriter, ControlAdapter)

指定した ControlAdapter オブジェクトを使用して、指定した HtmlTextWriter オブジェクトにサーバー コントロールの内容を出力します。

ResolveAdapter()

指定したコントロールを表示するコントロール アダプターを取得します。

ResolveClientUrl(String)

ブラウザーで使用できる URL を取得します。

ResolveUrl(String)

要求側クライアントで使用できる URL に変換します。

SaveControlState()

ページがサーバーにポスト バックされた時間以降に発生したすべてのサーバー コントロール状態の変化を保存します。

SaveViewState()

ページがサーバーにポスト バックされた時間以降に発生した、サーバー コントロールのビューステートの変更を保存します。

SetDesignModeState(IDictionary)

コントロールのデザイン時データを設定します。

SetRenderMethodDelegate(RenderMethod)

サーバー コントロールとその内容を親コントロールに表示するイベント ハンドラー デリゲートを割り当てます。

SetTraceData(Object, Object)

トレース データ キーとトレース データ値を使用して、レンダリング データのデザイン時トレースのトレース データを設定します。

SetTraceData(Object, Object, Object)

トレースされたオブジェクト、トレース データ キー、およびトレース データ値を使用して、レンダリング データのデザイン時トレースのトレース データを設定します。

ToString()

現在のオブジェクトを表す文字列を返します。

(継承元 Object)
TrackViewState()

サーバー コントロールにビューステートの変更を追跡させ、サーバー コントロールの StateBag オブジェクトに変更を格納できるようにします。 このオブジェクトは、ViewState プロパティによってアクセスできます。

イベント

DataBinding

サーバー コントロールがデータ ソースに連結すると発生します。

Disposed

サーバー コントロールがメモリから解放されると発生します。これは、ASP.NET ページが要求されている場合のサーバー コントロールの有効期間における最終段階です。

Init

サーバー コントロールが初期化されると発生します。これは、サーバー コントロールの有効期間における最初の手順です。

Load

サーバー コントロールが Page オブジェクトに読み込まれると発生します。

PreRender

Control オブジェクトの読み込み後、表示を開始する前に発生します。

Unload

サーバー コントロールがメモリからアンロードされると発生します。

明示的なインターフェイスの実装

IControlBuilderAccessor.ControlBuilder

このメンバーの詳細については、「ControlBuilder」をご覧ください。

IControlDesignerAccessor.GetDesignModeState()

このメンバーの詳細については、「GetDesignModeState()」をご覧ください。

IControlDesignerAccessor.SetDesignModeState(IDictionary)

このメンバーの詳細については、「SetDesignModeState(IDictionary)」をご覧ください。

IControlDesignerAccessor.SetOwnerControl(Control)

このメンバーの詳細については、「SetOwnerControl(Control)」をご覧ください。

IControlDesignerAccessor.UserData

このメンバーの詳細については、「UserData」をご覧ください。

IDataBindingsAccessor.DataBindings

このメンバーの詳細については、「DataBindings」をご覧ください。

IDataBindingsAccessor.HasDataBindings

このメンバーの詳細については、「HasDataBindings」をご覧ください。

IExpressionsAccessor.Expressions

このメンバーの詳細については、「Expressions」をご覧ください。

IExpressionsAccessor.HasExpressions

このメンバーの詳細については、「HasExpressions」をご覧ください。

IParserAccessor.AddParsedSubObject(Object)

このメンバーの詳細については、「AddParsedSubObject(Object)」をご覧ください。

拡張メソッド

FindDataSourceControl(Control)

指定されたコントロールのデータ コントロールに関連付けられているデータ ソースを返します。

FindFieldTemplate(Control, String)

指定されたコントロールの名前付けコンテナー内にある、指定された列のフィールド テンプレートを返します。

FindMetaTable(Control)

格納しているデータ コントロールのメタテーブル オブジェクトを返します。

適用対象

こちらもご覧ください