Compartilhar via


HierarchicalDataBoundControlAdapter Classe

Definição

Personaliza, para solicitações de navegador específicas, o comportamento de um objeto HierarchicalDataBoundControl ao qual esse adaptador de controle está associado.

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
Herança
HierarchicalDataBoundControlAdapter

Exemplos

O exemplo de código a seguir mostra como estender a HierarchicalDataBoundControlAdapter classe para renderizar um controle hierárquico TreeView associado a um XmlDataSource objeto .

Este exemplo de código contém quatro objetos:

  • Um adaptador derivado da HierarchicalDataBoundControlAdapter classe .

  • O arquivo .aspx que incorpora o controle e o TreeView conteúdo específico do dispositivo.

  • Um arquivo do navegador para vincular o adaptador a um tipo de dispositivo.

  • Um arquivo XML que contém uma lista hierárquica de funcionários.

Este exemplo de código consiste em quatro segmentos de código. O primeiro segmento de código demonstra como estender a HierarchicalDataBoundControlAdapter classe .

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

O segundo segmento de código demonstra como declarar um TreeView para associar a uma fonte de dados XML.

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

O terceiro segmento de código mostra como vincular o TreeView controle ao adaptador personalizado para navegadores em execução no Windows CE.

O segmento de código final fornece os dados XML aos quais o TreeView controle se associa.

Comentários

A HierarchicalDataBoundControlAdapter classe adapta o controle associado HierarchicalDataBoundControl para modificar a marcação padrão ou o comportamento de um navegador específico. Você pode estender a HierarchicalDataBoundControlAdapter classe para personalizar ainda mais a renderização do HierarchicalDataBoundControl controle.

Um HierarchicalDataBoundControl controle é associado a uma fonte de dados e gera sua interface do usuário (ou hierarquia de controle filho, normalmente), enumerando os itens na fonte de dados à qual ele está associado. Para obter mais informações sobre controles hierárquicos associados a dados, consulte HierarchicalDataBoundControl.

Os adaptadores de controle are.NET componentes que gerenciam um ou mais estágios no ciclo de vida de um controle para um navegador específico. Estender a HierarchicalDataBoundControlAdapter classe fornece acesso aos estágios do ciclo de vida do HierarchicalDataBoundControl controle. Para obter mais informações, consulte Visão geral da arquitetura do comportamento do controle adaptável.

A solicitação inicial de um adaptador faz com que o .NET Framework pesquise um adaptador mapeado para o controle, considerando as características do navegador solicitante. Os arquivos de definição do HttpBrowserCapabilities navegador são usados pela classe para identificar as características do navegador cliente e mapear o adaptador para o tipo de navegador.

Construtores

HierarchicalDataBoundControlAdapter()

Inicializa uma nova instância da classe HierarchicalDataBoundControlAdapter.

Propriedades

Browser

Obtém uma referência aos recursos do navegador do cliente que está fazendo a solicitação HTTP atual.

(Herdado de ControlAdapter)
Control

Recupera uma referência fortemente tipada para o controle HierarchicalDataBoundControl associado a este objeto HierarchicalDataBoundControlAdapter.

IsEnabled

Obtém um valor que indica se o controle da Web e todos os seus controles pais estão habilitados.

(Herdado de WebControlAdapter)
Page

Obtém uma referência à página em que o controle associado a esse adaptador está.

(Herdado de ControlAdapter)
PageAdapter

Obtém uma referência ao adaptador de página da página em que o controle associado está.

(Herdado de ControlAdapter)

Métodos

BeginRender(HtmlTextWriter)

Chamado antes da renderização de um controle. Em uma classe de adaptador derivada, gera marcas de abertura que são necessárias para um destino específico, mas não para navegadores HTML.

(Herdado de ControlAdapter)
CreateChildControls()

Cria os controles filho de destino específico de um controle de composição.

(Herdado de ControlAdapter)
EndRender(HtmlTextWriter)

Chamado depois da renderização de um controle. Em uma classe de adaptador derivada, gera marcas de fechamento que são necessárias para um destino específico, mas não para navegadores HTML.

(Herdado de ControlAdapter)
Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
GetHashCode()

Serve como a função de hash padrão.

(Herdado de Object)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
LoadAdapterControlState(Object)

Carrega informações sobre o estado do controle do adaptador que foram salvas pelo SaveAdapterControlState() durante a solicitação anterior à página em que o controle associado a esse adaptador de controle está.

(Herdado de ControlAdapter)
LoadAdapterViewState(Object)

Carrega informações sobre o estado de exibição do adaptador que foram salvas pelo SaveAdapterViewState() durante uma solicitação anterior à página em que o controle associado a esse adaptador de controle está.

(Herdado de ControlAdapter)
MemberwiseClone()

Cria uma cópia superficial do Object atual.

(Herdado de Object)
OnInit(EventArgs)

Substitui o método OnInit(EventArgs) do controle associado.

(Herdado de ControlAdapter)
OnLoad(EventArgs)

Substitui o método OnLoad(EventArgs) do controle associado.

(Herdado de ControlAdapter)
OnPreRender(EventArgs)

Substitui o método OnPreRender(EventArgs) do controle associado.

(Herdado de ControlAdapter)
OnUnload(EventArgs)

Substitui o método OnUnload(EventArgs) do controle associado.

(Herdado de ControlAdapter)
PerformDataBinding()

Associa os dados na fonte de dados do controle associado a dados hierárquico associado ao adaptador.

Render(HtmlTextWriter)

Gera a marcação específica para o destino para o controle ao qual o adaptador de controle está anexado.

(Herdado de WebControlAdapter)
RenderBeginTag(HtmlTextWriter)

Cria a marca de início para o controle da Web na marcação que é transmitida para o navegador de destino.

(Herdado de WebControlAdapter)
RenderChildren(HtmlTextWriter)

Gera a marcação específica para o destino dos controles filho em um controle de composição ao qual o adaptador de controle está anexado.

(Herdado de ControlAdapter)
RenderContents(HtmlTextWriter)

Gera a marcação interna específica do destino do controle da Web ao qual o adaptador de controle está anexado.

(Herdado de WebControlAdapter)
RenderEndTag(HtmlTextWriter)

Cria a marca de término para o controle da Web na marcação que é transmitida para o navegador de destino.

(Herdado de WebControlAdapter)
SaveAdapterControlState()

Salva informações de estado do controle do adaptador de controle.

(Herdado de ControlAdapter)
SaveAdapterViewState()

Salva informações de estado de exibição do adaptador de controle.

(Herdado de ControlAdapter)
ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.

(Herdado de Object)

Aplica-se a

Confira também