Share via


HierarchicalDataBoundControlAdapter クラス

定義

このコントロール アダプターが関連付けられている HierarchicalDataBoundControl オブジェクトの、特定のブラウザー要求に対する動作をカスタマイズします。

public ref class HierarchicalDataBoundControlAdapter : System::Web::UI::WebControls::Adapters::WebControlAdapter
public class HierarchicalDataBoundControlAdapter : System.Web.UI.WebControls.Adapters.WebControlAdapter
type HierarchicalDataBoundControlAdapter = class
    inherit WebControlAdapter
Public Class HierarchicalDataBoundControlAdapter
Inherits WebControlAdapter
継承
HierarchicalDataBoundControlAdapter

次のコード例は、クラスを HierarchicalDataBoundControlAdapter 拡張して、オブジェクトにバインドされている階層コントロール TreeView をレンダリングする方法を XmlDataSource 示しています。

このコード例には、次の 4 つのオブジェクトが含まれています。

  • クラスから HierarchicalDataBoundControlAdapter 派生したアダプター。

  • コントロールとデバイス固有のコンテンツを TreeView 組み込んだ .aspx ファイル。

  • アダプターをデバイスの種類にリンクするブラウザー ファイル。

  • 従業員の階層リストを含む XML ファイル。

このコード例は、4 つのコード セグメントで構成されています。 最初のコード セグメントでは、クラスを拡張する方法を HierarchicalDataBoundControlAdapter 示します。

using System;
using System.Web;
using System.Web.UI;
using System.Security.Permissions;

namespace Contoso
{
    [AspNetHostingPermission(
        SecurityAction.Demand, 
        Level = AspNetHostingPermissionLevel.Minimal)]
    [AspNetHostingPermission(
        SecurityAction.InheritanceDemand, 
        Level = AspNetHostingPermissionLevel.Minimal)]
    public class HierarchicalTreeViewAdapter :
        System.Web.UI.WebControls.Adapters.HierarchicalDataBoundControlAdapter
    {
        // Return a strongly-typed TreeView control for adapter.
        protected new System.Web.UI.WebControls.TreeView Control
        {
            get
            {
                return (System.Web.UI.WebControls.TreeView)base.Control;
            }
        }

        // Verify the DataSourceID property is set prior to binding data.
        protected override void PerformDataBinding()
        {
            if (Control.DataSourceID != null)
            {
                base.PerformDataBinding();
            }
        }
    }
}
Imports System.Web
Imports System.Security.Permissions

Namespace Contoso

    <AspNetHostingPermission(SecurityAction.Demand, _
        Level:=AspNetHostingPermissionLevel.Minimal)> _
    <AspNetHostingPermission(SecurityAction.InheritanceDemand, _
        Level:=AspNetHostingPermissionLevel.Minimal)> _
    Public Class HierarchicalTreeViewAdapter
        Inherits _
        System.Web.UI.WebControls.Adapters.HierarchicalDataBoundControlAdapter

        ' Return a strongly-typed TreeView control for adapter.
        Protected Overloads ReadOnly Property Control() As _
            System.Web.UI.WebControls.TreeView

            Get
                Return CType( _
                    MyBase.Control, _
                    System.Web.UI.WebControls.TreeView)
            End Get
        End Property

        ' Verify the DataSourceID property is set prior to binding data.
        Protected Overrides Sub PerformDataBinding()

            If (Not Control.DataSourceID Is Nothing) Then

                MyBase.PerformDataBinding()
            End If
        End Sub
    End Class
End Namespace

2 番目のコード セグメントは、XML データ ソースにバインドする a TreeView を宣言する方法を示しています。

<%@ page language="c#" %>

<!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 runat="server">
    <title>HierarchicalDataBoundControl Adapter</title>
</head>
<body>
    <form id="Form1" runat="server">
        <asp:TreeView ID="TreeView1" 
            Runat="server" 
            DataSourceID="XmlDataSource1">

            <DataBindings>
                <asp:TreeNodeBinding    
                    DataMember="employees" Text="Employees"/>
                <asp:TreeNodeBinding    
                    DataMember="employee" TextField="id" />
                <asp:TreeNodeBinding    
                    DataMember="name" TextField="fullname" />
            </DataBindings>
        </asp:TreeView>
        
        <asp:XmlDataSource ID="XmlDataSource1"  
            Runat="server" 
            DataFile="employees.xml" />
        <br />
    </form>
</body>
</html>
<%@ page language="VB" %>

<!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 runat="server">
    <title>HierarchicalDataBoundControl Adapter</title>
</head>
<body>
    <form id="Form1" runat="server">
        <asp:TreeView ID="TreeView1" 
            Runat="server" 
            DataSourceID="XmlDataSource1">

            <DataBindings>
                <asp:TreeNodeBinding    
                    DataMember="employees" Text="Employees"/>
                <asp:TreeNodeBinding    
                    DataMember="employee" TextField="id" />
                <asp:TreeNodeBinding    
                    DataMember="name" TextField="fullname" />
            </DataBindings>
        </asp:TreeView>
        
        <asp:XmlDataSource ID="XmlDataSource1"  
            Runat="server" 
            DataFile="employees.xml" />
        <br />
    </form>
</body>
</html>

3 番目のコード セグメントは、Windows CEで実行されているブラウザーのカスタム アダプターにコントロールをリンクTreeViewする方法を示しています。

最後のコード セグメントは、コントロールがバインドする XML データを TreeView 提供します。

注釈

このクラスは HierarchicalDataBoundControlAdapter 、関連付けられた HierarchicalDataBoundControl コントロールを調整して、特定のブラウザーの既定のマークアップまたは動作を変更します。 クラスを HierarchicalDataBoundControlAdapter 拡張して、コントロールの HierarchicalDataBoundControl レンダリングをさらにカスタマイズできます。

HierarchicalDataBoundControlコントロールはデータ ソースにバインドされ、バインド先のデータ ソース内の項目を列挙することによって、そのユーザー インターフェイス (通常は子コントロール階層) を生成します。 階層データ バインド コントロールの詳細については、次を参照してください HierarchicalDataBoundControl

コントロール アダプター are.NET、特定のブラウザーのコントロールのライフ サイクルで 1 つ以上のステージを管理するコンポーネントです。 クラスを HierarchicalDataBoundControlAdapter 拡張すると、コントロールのライフサイクル ステージに HierarchicalDataBoundControl アクセスできます。 詳細については、「 アダプティブ制御動作のアーキテクチャの概要」を参照してください。

アダプターの最初の要求により、要求するブラウザーの特性を考慮して、.NET Frameworkはコントロールのマップされたアダプターを検索します。 ブラウザー定義ファイルは、クライアント ブラウザーの HttpBrowserCapabilities 特性を識別し、アダプターをブラウザーの種類にマップするために、クラスによって使用されます。

コンストラクター

HierarchicalDataBoundControlAdapter()

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

プロパティ

Browser

現在の HTTP 要求の作成元であるクライアントのブラウザー機能への参照を取得します。

(継承元 ControlAdapter)
Control

HierarchicalDataBoundControl オブジェクトに関連付けられた HierarchicalDataBoundControlAdapter コントロールへの、厳密に型指定された参照を取得します。

IsEnabled

Web コントロールおよびそのすべての親コントロールが有効になっているかどうかを示す値を取得します。

(継承元 WebControlAdapter)
Page

このアダプターに関連付けられたコントロールが配置されているページへの参照を取得します。

(継承元 ControlAdapter)
PageAdapter

関連付けられたコントロールが配置されているページのページ アダプターへの参照を取得します。

(継承元 ControlAdapter)

メソッド

BeginRender(HtmlTextWriter)

コントロールの表示前に呼び出されます。 派生アダプター クラスで、HTML ブラウザーには必要ではなくても特定のターゲットには必要な開始タグを生成します。

(継承元 ControlAdapter)
CreateChildControls()

複合コントロールのターゲット固有の子コントロールを作成します。

(継承元 ControlAdapter)
EndRender(HtmlTextWriter)

コントロールの表示後に呼び出されます。 派生アダプター クラスで、HTML ブラウザーには必要ではなくても特定のターゲットには必要な終了タグを生成します。

(継承元 ControlAdapter)
Equals(Object)

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

(継承元 Object)
GetHashCode()

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

(継承元 Object)
GetType()

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

(継承元 Object)
LoadAdapterControlState(Object)

このコントロール アダプターに関連付けられたコントロールが配置されているページに対する以前の要求時に SaveAdapterControlState() によって保存された、アダプターのコントロール状態情報を読み込みます。

(継承元 ControlAdapter)
LoadAdapterViewState(Object)

このコントロール アダプターに関連付けられたコントロールが配置されているページに対する以前の要求時に SaveAdapterViewState() によって保存された、アダプターのビューステートを読み込みます。

(継承元 ControlAdapter)
MemberwiseClone()

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

(継承元 Object)
OnInit(EventArgs)

関連付けられたコントロールの OnInit(EventArgs) メソッドをオーバーライドします。

(継承元 ControlAdapter)
OnLoad(EventArgs)

関連付けられたコントロールの OnLoad(EventArgs) メソッドをオーバーライドします。

(継承元 ControlAdapter)
OnPreRender(EventArgs)

関連付けられたコントロールの OnPreRender(EventArgs) メソッドをオーバーライドします。

(継承元 ControlAdapter)
OnUnload(EventArgs)

関連付けられたコントロールの OnUnload(EventArgs) メソッドをオーバーライドします。

(継承元 ControlAdapter)
PerformDataBinding()

関連付けられている階層構造のデータ バインド コントロールのデータ ソースのデータをアダプターにバインドします。

Render(HtmlTextWriter)

コントロール アダプターがアタッチされるコントロール用にターゲット固有のマークアップを生成します。

(継承元 WebControlAdapter)
RenderBeginTag(HtmlTextWriter)

対象のブラウザーに送信されるマークアップ内に Web コントロールの開始タグを作成します。

(継承元 WebControlAdapter)
RenderChildren(HtmlTextWriter)

コントロール アダプターの割り当て先である複合コントロールに含まれる子コントロールのターゲット固有のマークアップを生成します。

(継承元 ControlAdapter)
RenderContents(HtmlTextWriter)

コントロール アダプターの割り当て先である Web コントロールのターゲット固有の内部マークアップを生成します。

(継承元 WebControlAdapter)
RenderEndTag(HtmlTextWriter)

対象のブラウザーに送信されるマークアップ内に Web コントロールの終了タグを作成します。

(継承元 WebControlAdapter)
SaveAdapterControlState()

コントロール アダプターのコントロール状態情報を保存します。

(継承元 ControlAdapter)
SaveAdapterViewState()

コントロール アダプターのビューステート情報を保存します。

(継承元 ControlAdapter)
ToString()

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

(継承元 Object)

適用対象

こちらもご覧ください