다음을 통해 공유


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 .

  • 통합 하는.aspx 파일의 TreeView 컨트롤 뷰 및 디바이스별 콘텐츠입니다.

  • 디바이스 유형 어댑터를 연결할 브라우저 파일입니다.

  • 직원의 계층적 목록이 포함된 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

두 번째 코드 세그먼트는 XML 데이터 원본에 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>

세 번째 코드 세그먼트는 Windows CE 실행되는 브라우저에 대한 사용자 지정 어댑터에 컨트롤을 연결하는 TreeView 방법을 보여 줍니다.

최종 코드 세그먼트는 컨트롤이 바인딩하는 TreeView XML 데이터를 제공합니다.

설명

클래스는 HierarchicalDataBoundControlAdapter 특정 브라우저에 대한 기본 태그 또는 동작을 수정하도록 연결된 HierarchicalDataBoundControl 컨트롤을 조정합니다. 클래스를 HierarchicalDataBoundControlAdapter 확장하여 컨트롤의 HierarchicalDataBoundControl 렌더링을 추가로 사용자 지정할 수 있습니다.

HierarchicalDataBoundControl 컨트롤은 데이터 원본에 바인딩되고 바인딩된 데이터 원본의 항목을 열거하여 사용자 인터페이스(또는 일반적으로 자식 컨트롤 계층 구조)를 생성합니다. 계층적 데이터 바인딩된 컨트롤에 대한 자세한 내용은 다음을 참조하세요 HierarchicalDataBoundControl.

컨트롤 어댑터 are.NET 특정 브라우저에 대 한 컨트롤의 수명 주기에서 하나 이상의 단계를 관리 하는 구성 요소입니다. 클래스를 HierarchicalDataBoundControlAdapter 확장하면 컨트롤의 수명 주기 단계에 액세스할 수 HierarchicalDataBoundControl 있습니다. 자세한 내용은 적응형 컨트롤 동작의 아키텍처 개요를 참조하세요.

어댑터에 대한 초기 요청으로 인해 .NET Framework 요청 브라우저의 특성을 고려하여 컨트롤에 대한 매핑된 어댑터를 검색합니다. 브라우저 정의 파일은 클래스에서 HttpBrowserCapabilities 클라이언트 브라우저의 특성을 식별하고 어댑터를 브라우저 유형에 매핑하는 데 사용됩니다.

생성자

HierarchicalDataBoundControlAdapter()

HierarchicalDataBoundControlAdapter 클래스의 새 인스턴스를 초기화합니다.

속성

Browser

현재 HTTP 요청을 하는 클라이언트의 브라우저 기능에 대한 참조를 가져옵니다.

(다음에서 상속됨 ControlAdapter)
Control

HierarchicalDataBoundControl 개체와 연결된 HierarchicalDataBoundControlAdapter 컨트롤에 대한 강력한 형식의 참조를 검색합니다.

IsEnabled

웹 컨트롤 및 모든 부모 컨트롤을 사용할 수 있는지 여부를 나타내는 값을 가져옵니다.

(다음에서 상속됨 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)

대상 브라우저로 전송되는 태그 안에 웹 컨트롤의 시작 태그를 만듭니다.

(다음에서 상속됨 WebControlAdapter)
RenderChildren(HtmlTextWriter)

컨트롤 어댑터가 결합되는 합성 컨트롤의 자식 컨트롤에 대한 대상별 태그를 생성합니다.

(다음에서 상속됨 ControlAdapter)
RenderContents(HtmlTextWriter)

컨트롤 어댑터가 연결된 웹 컨트롤에 대한 대상별 내부 태그를 생성합니다.

(다음에서 상속됨 WebControlAdapter)
RenderEndTag(HtmlTextWriter)

대상 브라우저로 전송되는 태그 안에 웹 컨트롤의 끝 태그를 만듭니다.

(다음에서 상속됨 WebControlAdapter)
SaveAdapterControlState()

컨트롤 어댑터의 컨트롤 상태 정보를 저장합니다.

(다음에서 상속됨 ControlAdapter)
SaveAdapterViewState()

컨트롤 어댑터의 뷰 상태 정보를 저장합니다.

(다음에서 상속됨 ControlAdapter)
ToString()

현재 개체를 나타내는 문자열을 반환합니다.

(다음에서 상속됨 Object)

적용 대상

추가 정보