HierarchicalDataBoundControl Classe

Definizione

Funge da classe base per tutti i controlli associati a dati ASP.NET versione 2.0 che visualizzano i propri dati in formato gerarchico.

public ref class HierarchicalDataBoundControl abstract : System::Web::UI::WebControls::BaseDataBoundControl
public abstract class HierarchicalDataBoundControl : System.Web.UI.WebControls.BaseDataBoundControl
type HierarchicalDataBoundControl = class
    inherit BaseDataBoundControl
Public MustInherit Class HierarchicalDataBoundControl
Inherits BaseDataBoundControl
Ereditarietà
HierarchicalDataBoundControl
Derivato

Esempio

Nell'esempio di codice seguente viene illustrato come derivare una classe dalla HierarchicalDataBoundControl classe per creare un controllo associato a dati personalizzato. Il controllo esegue il GeneologyTree rendering di una pre sezione HTML con un albero di testo per i dati recuperati da un controllo origine dati associato.

using System;
using System.Collections;
using System.ComponentModel;
using System.Security.Permissions;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace Samples.AspNet.CS.Controls {

    [AspNetHostingPermission(SecurityAction.Demand, 
        Level=AspNetHostingPermissionLevel.Minimal)]
    [AspNetHostingPermission(SecurityAction.InheritanceDemand, 
        Level=AspNetHostingPermissionLevel.Minimal)]
    public class GeneologyTree : HierarchicalDataBoundControl {

        private TreeNode rootNode;
        public TreeNode RootNode {
            get {
                rootNode ??= new TreeNode(String.Empty);
                return rootNode;
            }
        }
        
        private ArrayList nodes;
        public ArrayList Nodes {
            get {
                if (null == nodes) {
                    nodes = new ArrayList();
                }
                return nodes;
            }
        }
        public string DataTextField {
            get {
                object o = ViewState["DataTextField"];
                return((o == null) ? string.Empty : (string)o);
            }
            set {
                ViewState["DataTextField"] = value;
                if (Initialized) {
                    OnDataPropertyChanged();
                }
            }
        }
        private int _maxDepth = 0;
        protected override void PerformDataBinding() {
            base.PerformDataBinding();

            // Do not attempt to bind data if there is no
            // data source set.
            if (!IsBoundUsingDataSourceID && (DataSource == null)) {
                return;
            }
            
            HierarchicalDataSourceView view = GetData(RootNode.DataPath);
            
            if (view == null) {
                throw new InvalidOperationException
                    ("No view returned by data source control.");
            }                                  
            
            IHierarchicalEnumerable enumerable = view.Select();
            if (enumerable != null) {
                            
                Nodes.Clear();
                                
                try {
                    RecurseDataBindInternal(RootNode, enumerable, 1);
                }
                finally {
                }
            }
        }
        private void RecurseDataBindInternal(TreeNode node, 
            IHierarchicalEnumerable enumerable, int depth) {                                    
                        
            foreach(object item in enumerable) {
                IHierarchyData data = enumerable.GetHierarchyData(item);

                if (null != data) {
                    // Create an object that represents the bound data
                    // to the control.
                    TreeNode newNode = new TreeNode();
                    RootViewNode rvnode = new RootViewNode();
                    
                    rvnode.Node = newNode;
                    rvnode.Depth = depth;

                    // The dataItem is not just a string, but potentially
                    // an XML node or some other container. 
                    // If DataTextField is set, use it to determine which 
                    // field to render. Otherwise, use the first field.                    
                    if (DataTextField.Length > 0) {
                        newNode.Text = DataBinder.GetPropertyValue
                            (data, DataTextField, null);
                    }
                    else {
                        PropertyDescriptorCollection props = 
                            TypeDescriptor.GetProperties(data);

                        // Set the "default" value of the node.
                        newNode.Text = String.Empty;                        

                        // Set the true data-bound value of the TextBox,
                        // if possible.
                        if (props.Count >= 1) {                        
                            if (null != props[0].GetValue(data)) {
                                newNode.Text = 
                                    props[0].GetValue(data).ToString();
                            } 
                        }
                    }

                    Nodes.Add(rvnode);                    
                    
                    if (data.HasChildren) {
                        IHierarchicalEnumerable newEnumerable = 
                            data.GetChildren();
                        if (newEnumerable != null) {                            
                            RecurseDataBindInternal(newNode, 
                                newEnumerable, depth+1 );
                        }
                    }
                    
                    if ( _maxDepth < depth) _maxDepth = depth;
                }
            }
        }
        protected override void Render(HtmlTextWriter writer) {
                        
            writer.WriteLine("<PRE>");                        
            int currentDepth = 1;
            int currentTextLen = 0;
            
            foreach (RootViewNode rvnode in Nodes) {
                if (rvnode.Depth == currentDepth) {
                    string output = "  " + rvnode.Node.Text + "  ";
                    writer.Write(output);
                    currentTextLen = currentTextLen + output.Length;
                }
                else {
                    writer.WriteLine("");
                    // Some very basic white-space formatting
                    int halfLine = currentTextLen / 2;
                    for (int i=0;i<halfLine;i++) {
                        writer.Write(' ');
                    }
                    writer.Write('|');
                    writer.WriteLine("");
                    ++currentDepth; 
                    currentTextLen = 0;
                    for (int j=0;j<halfLine;j++) {
                        writer.Write(' ');
                    }
                    string output = "  " + rvnode.Node.Text + "  ";
                    writer.Write(output);
                    currentTextLen = currentTextLen + output.Length;                    
                }                                                           
            }
            writer.WriteLine("</PRE>");
        }
        
        private class RootViewNode { 
            public TreeNode Node;
            public int Depth;
        }
    }
}
Imports System.Collections
Imports System.ComponentModel
Imports System.Security.Permissions
Imports System.Web
Imports System.Web.UI
Imports System.Web.UI.WebControls

Namespace Samples.AspNet.VB.Controls

    <AspNetHostingPermission(SecurityAction.Demand, _
      Level:=AspNetHostingPermissionLevel.Minimal), _
      AspNetHostingPermission(SecurityAction.InheritanceDemand, _
      Level:=AspNetHostingPermissionLevel.Minimal)> _
    Public Class GeneologyTree
        Inherits HierarchicalDataBoundControl

        Dim MaxDepth As Integer = 0

        Private aRootNode As TreeNode
        Public ReadOnly Property RootNode() As TreeNode
            Get
                If aRootNode Is Nothing Then
                    aRootNode = New TreeNode(String.Empty)
                End If
                Return aRootNode
            End Get
        End Property

        Private alNodes As ArrayList
        Public ReadOnly Property Nodes() As ArrayList
            Get
                If alNodes Is Nothing Then
                    alNodes = New ArrayList()
                End If
                Return alNodes
            End Get
        End Property

        Public Property DataTextField() As String
            Get
                Dim o As Object = ViewState("DataTextField")
                If o Is Nothing Then
                    Return String.Empty
                Else
                    Return CStr(o)
                End If
            End Get
            Set(ByVal value As String)
                ViewState("DataTextField") = value
                If Initialized Then
                    OnDataPropertyChanged()
                End If
            End Set
        End Property

        Protected Overrides Sub PerformDataBinding()
            MyBase.PerformDataBinding()

            ' Do not attempt to bind data if there is no
            ' data source set.
            If Not IsBoundUsingDataSourceID AndAlso DataSource Is Nothing Then
                Return
            End If

            Dim view As HierarchicalDataSourceView = GetData(RootNode.DataPath)

            If view Is Nothing Then
                Throw New InvalidOperationException _
                ("No view returned by data source control.")
            End If

            Dim enumerable As IHierarchicalEnumerable = view.Select()
            If Not (enumerable Is Nothing) Then

                Nodes.Clear()

                Try
                    RecurseDataBindInternal(RootNode, enumerable, 1)
                Finally
                End Try
            End If

        End Sub

        Private Sub RecurseDataBindInternal(ByVal node As TreeNode, _
            ByVal enumerable As IHierarchicalEnumerable, _
            ByVal depth As Integer)

            Dim item As Object
            For Each item In enumerable

                Dim data As IHierarchyData = enumerable.GetHierarchyData(item)

                If Not data Is Nothing Then

                    ' Create an object that represents the bound data
                    ' to the control.
                    Dim newNode As New TreeNode()
                    Dim rvnode As New RootViewNode()

                    rvnode.Node = newNode
                    rvnode.Depth = depth

                    ' The dataItem is not just a string, but potentially
                    ' an XML node or some other container. 
                    ' If DataTextField is set, use it to determine which 
                    ' field to render. Otherwise, use the first field.                    
                    If DataTextField.Length > 0 Then
                        newNode.Text = DataBinder.GetPropertyValue _
                        (data, DataTextField, Nothing)
                    Else
                        Dim props As PropertyDescriptorCollection = _
                        TypeDescriptor.GetProperties(data)

                        ' Set the "default" value of the node.
                        newNode.Text = String.Empty

                        ' Set the true data-bound value of the TextBox,
                        ' if possible.
                        If props.Count >= 1 Then
                            If Not props(0).GetValue(data) Is Nothing Then
                                newNode.Text = props(0).GetValue(data).ToString()
                            End If
                        End If
                    End If

                    Nodes.Add(rvnode)

                    If data.HasChildren Then
                        Dim newEnumerable As IHierarchicalEnumerable = _
                            data.GetChildren()
                        If Not (newEnumerable Is Nothing) Then
                            RecurseDataBindInternal(newNode, _
                            newEnumerable, depth + 1)
                        End If
                    End If

                    If MaxDepth < depth Then
                        MaxDepth = depth
                    End If
                End If
            Next item

        End Sub

        Protected Overrides Sub Render(ByVal writer As HtmlTextWriter)

            writer.WriteLine("<PRE>")
            Dim currentDepth As Integer = 1
            Dim currentTextLen As Integer = 0

            Dim rvnode As RootViewNode
            For Each rvnode In Nodes
                If rvnode.Depth = currentDepth Then
                    Dim output As String = "  " + rvnode.Node.Text + "  "
                    writer.Write(output)
                    currentTextLen = currentTextLen + output.Length
                Else
                    writer.WriteLine("")

                    ' Some very basic white-space formatting.
                    ' The implicit conversion to an Integer is fine, as 
                    ' a general estimate is acceptable for this 
                    ' simple example.
                    Dim halfLine As Integer = CInt(currentTextLen / 2)
                    Dim i As Integer
                    For i = 0 To halfLine
                        writer.Write(" "c)
                    Next i
                    writer.Write("|"c)
                    writer.WriteLine("")
                    currentDepth += 1
                    Dim j As Integer
                    For j = 0 To halfLine
                        writer.Write(" "c)
                    Next j
                    Dim output As String = "  " + rvnode.Node.Text + "  "
                    writer.Write(output)
                    currentTextLen = currentTextLen + output.Length
                End If
            Next rvnode
            writer.WriteLine("</PRE>")

        End Sub


        Private Class RootViewNode
            Public Node As TreeNode
            Public Depth As Integer
        End Class
    End Class
End Namespace

Nell'esempio di codice seguente viene illustrato come usare il GeneologyTree controllo , definito nell'esempio precedente e associarlo a un XmlDataSource controllo .

<%@Page language="c#" %>
<%@ Register TagPrefix="aspSample" 
    Namespace="Samples.AspNet.CS.Controls" 
    Assembly="Samples.AspNet.CS.Controls" %>

<!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>
    <title>C# Example</title>
  </head>

  <body>
    <form id="Form1" method="post" runat="server">

        <aspSample:geneologytree
          id="GeneologyTree1"
          runat="server"
          datatextfield="title"
          datasourceid="XmlDataSource1" />

        <asp:xmldatasource
          id="XmlDataSource1"
          datafile="geneology.xml"          
          runat="server" />
          
    </form>
  </body>
</html>
<%@Page language="VB" %>
<%@ Register TagPrefix="aspSample" 
    Namespace="Samples.AspNet.VB.Controls" 
    Assembly="Samples.AspNet.VB.Controls" %>

<!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>
    <title>VB Example</title>
  </head>

  <body>
    <form id="Form1" method="post" runat="server">

        <aspSample:geneologytree
          id="GeneologyTree1"
          runat="server"
          datatextfield="title"
          datasourceid="XmlDataSource1" />

        <asp:xmldatasource
          id="XmlDataSource1"
          datafile="geneology.xml"          
          runat="server" />
          
    </form>
  </body>
</html>

Il file geneology.xml a cui si accede nell'esempio di codice contiene i dati seguenti.

<family>  
  <member title="great-grandfather">  
    <member title="grandfather" >  
      <member title="child" />  
      <member title="father" >  
         <member title="son" />  
      </member>  
    </member>  
  </member>  
</family>  

Commenti

La HierarchicalDataBoundControl classe è la classe base utilizzata per ASP.NET controlli che recuperano dati da un controllo origine dati gerarchico ASP.NET e associano gli elementi dell'interfaccia utente del controllo a tali dati per la visualizzazione. Le TreeView classi e Menu derivano da HierarchicalDataBoundControl.

Gli sviluppatori di pagine non usano direttamente la HierarchicalDataBoundControl classe , ma usano invece controlli che derivano da questa classe.

Gli sviluppatori di controlli estendono questa classe per creare controlli associati a dati che funzionano con classi che implementano l'interfaccia IHierarchicalDataSource e le classi che derivano dalle HierarchicalDataSourceControl classi e HierarchicalDataSourceView . Quando si deriva una classe dalla HierarchicalDataBoundControl classe , eseguire l'override del PerformDataBinding metodo per associare gli elementi dell'interfaccia utente del controllo ai dati recuperati dal GetData metodo . Nella maggior parte dei casi, il PerformDataBinding metodo è l'unico metodo di cui si eseguirà l'override nella classe derivata.

Per ASP.NET controlli associati a dati 2.0, il PerformSelect metodo è l'equivalente del DataBind metodo e viene chiamato per associare i dati in fase di esecuzione. Il PerformSelect metodo chiama i GetData metodi e PerformDataBinding .

Costruttori

HierarchicalDataBoundControl()

Inizializza una nuova istanza della classe HierarchicalDataBoundControl.

Proprietà

AccessKey

Ottiene o imposta il tasto di scelta che consente di accedere rapidamente al controllo server Web.

(Ereditato da WebControl)
Adapter

Ottiene l'adattatore specifico del browser per il controllo.

(Ereditato da Control)
AppRelativeTemplateSourceDirectory

Ottiene o imposta la directory virtuale relativa all'applicazione dell'oggetto Page o UserControl contenente questo controllo.

(Ereditato da Control)
Attributes

Ottiene l'insieme di attributi arbitrari (solo per il rendering) che non corrispondono alle proprietà del controllo.

(Ereditato da WebControl)
BackColor

Ottiene o imposta il colore di sfondo del controllo server Web.

(Ereditato da WebControl)
BindingContainer

Ottiene il controllo contenente l'associazione dati del controllo corrente.

(Ereditato da Control)
BorderColor

Ottiene o imposta il colore del bordo del controllo Web.

(Ereditato da WebControl)
BorderStyle

Ottiene o imposta lo stile del bordo del controllo server Web.

(Ereditato da WebControl)
BorderWidth

Ottiene o imposta la larghezza del bordo del controllo server Web.

(Ereditato da WebControl)
ChildControlsCreated

Ottiene un valore che indica se i controlli figli del controllo server sono stati creati.

(Ereditato da Control)
ClientID

Ottiene l'ID di controllo per il markup HTML generato da ASP.NET.

(Ereditato da Control)
ClientIDMode

Ottiene o imposta l'algoritmo utilizzato per generare il valore della proprietà ClientID.

(Ereditato da Control)
ClientIDSeparator

Ottiene un carattere che rappresenta il separatore utilizzato nella proprietà ClientID.

(Ereditato da Control)
Context

Ottiene l'oggetto HttpContext associato al controllo server per la richiesta Web corrente.

(Ereditato da Control)
Controls

Ottiene un oggetto ControlCollection che rappresenta i controlli figlio per un controllo server specificato nella gerarchia dell'interfaccia utente.

(Ereditato da Control)
ControlStyle

Ottiene lo stile del controllo server Web. Questa proprietà viene usata principalmente dagli sviluppatori di controlli.

(Ereditato da WebControl)
ControlStyleCreated

Ottiene un valore che indica se è stato creato un oggetto Style per la proprietà ControlStyle. Questa proprietà viene utilizzata principalmente dagli sviluppatori di controlli.

(Ereditato da WebControl)
CssClass

Ottiene o imposta la classe CSS (Cascading Style Sheet) di cui viene eseguito il rendering tramite il controllo server Web sul client.

(Ereditato da WebControl)
DataItemContainer

Ottiene un riferimento al contenitore di denominazione se il contenitore di denominazione implementa IDataItemContainer.

(Ereditato da Control)
DataKeysContainer

Ottiene un riferimento al contenitore di denominazione se il contenitore di denominazione implementa IDataKeysControl.

(Ereditato da Control)
DataSource

Ottiene o imposta l'oggetto da cui il controllo con associazione a dati recupera il relativo elenco degli elementi di dati.

(Ereditato da BaseDataBoundControl)
DataSourceID

Ottiene o imposta l'ID del controllo da cui il controllo associato a dati recupera l'elenco di elementi di dati.

DesignMode

Ottiene un valore che indica se un controllo viene utilizzato in un'area di progettazione.

(Ereditato da Control)
Enabled

Ottiene o imposta un valore che indica se il controllo server Web è abilitato.

(Ereditato da WebControl)
EnableTheming

Ottiene o imposta un valore che indica se al controllo vengono applicati i temi.

(Ereditato da WebControl)
EnableViewState

Ottiene o imposta un valore che indica se lo stato di visualizzazione del controllo server deve essere persistente e lo stato di visualizzazione dei controlli figlio contenuti, per il client richiedente.

(Ereditato da Control)
Events

Ottiene un elenco dei delegati del gestore eventi per il controllo. Questa proprietà è di sola lettura.

(Ereditato da Control)
Font

Ottiene le proprietà del carattere associate al controllo server Web.

(Ereditato da WebControl)
ForeColor

Ottiene o imposta il colore di primo piano, in genere il colore del testo, del controllo server Web.

(Ereditato da WebControl)
HasAttributes

Ottiene un valore che indica se sono impostati attributi per il controllo.

(Ereditato da WebControl)
HasChildViewState

Ottiene un valore che indica se per i controlli figlio del controllo server corrente esistono impostazioni dello stato di visualizzazione salvate.

(Ereditato da Control)
Height

Ottiene o imposta l'altezza del controllo server Web.

(Ereditato da WebControl)
ID

Ottiene o imposta l'identificatore a livello di codice assegnato al controllo server.

(Ereditato da Control)
IdSeparator

Ottiene il carattere utilizzato per separare gli identificatori di controllo.

(Ereditato da Control)
Initialized

Ottiene un valore che indica se il controllo con associazione a dati è stato inizializzato.

(Ereditato da BaseDataBoundControl)
IsBoundUsingDataSourceID

Ottiene un valore che indica se la proprietà DataSourceID è impostata.

(Ereditato da BaseDataBoundControl)
IsChildControlStateCleared

Ottiene un valore che indica se i controlli contenuti in questo controllo dispongono di informazioni sullo stato del controllo.

(Ereditato da Control)
IsDataBindingAutomatic

Ottiene un valore che indica se l'associazione dati è automatica.

(Ereditato da BaseDataBoundControl)
IsEnabled

Ottiene un valore che indica se il controllo è abilitato.

(Ereditato da WebControl)
IsTrackingViewState

Ottiene un valore che indica se il controllo server salva le modifiche allo stato di visualizzazione.

(Ereditato da Control)
IsUsingModelBinders

Una volta eseguita l'implementazione in una classe derivata, ottiene un valore che indica se il controllo utilizza gli strumenti di associazione di modelli.

(Ereditato da BaseDataBoundControl)
IsViewStateEnabled

Ottiene un valore che indica se lo stato di visualizzazione è attivato per il controllo corrente.

(Ereditato da Control)
LoadViewStateByID

Ottiene un valore che indica se il controllo prende parte al caricamento del proprio stato di visualizzazione tramite ID anziché tramite l'indice.

(Ereditato da Control)
NamingContainer

Ottiene un riferimento al contenitore dei nomi del controllo server, che crea uno spazio dei nomi univoco per distinguere i controlli server che hanno lo stesso valore della proprietà ID.

(Ereditato da Control)
Page

Ottiene un riferimento all'istanza Page che contiene il controllo server.

(Ereditato da Control)
Parent

Ottiene un riferimento al controllo padre del controllo server nella gerarchia dei controlli della pagina.

(Ereditato da Control)
RenderingCompatibility

Ottiene un valore che specifica la versione di ASP.NET con cui sarà compatibile il codice HTML di cui è stato eseguito il rendering.

(Ereditato da Control)
RequiresDataBinding

Ottiene o imposta un valore che indica se deve essere chiamato il metodo DataBind().

(Ereditato da BaseDataBoundControl)
Site

Ottiene informazioni sul contenitore del controllo corrente quando viene eseguito il rendering in un'area di progettazione.

(Ereditato da Control)
SkinID

Ottiene o imposta l'interfaccia personalizzata da applicare al controllo.

(Ereditato da WebControl)
Style

Ottiene un insieme di attributi di testo di cui verrà eseguito il rendering sotto forma di attributo di stile nel tag esterno del controllo server Web.

(Ereditato da WebControl)
SupportsDisabledAttribute

Ottiene un valore che indica se il controllo deve impostare l'attributo disabled dell'elemento HTML di cui è stato eseguito il rendering su "disabilitato" quando la proprietà IsEnabled del controllo è false.

(Ereditato da BaseDataBoundControl)
TabIndex

Ottiene o imposta l'indice di tabulazione del controllo server Web.

(Ereditato da WebControl)
TagKey

Ottiene il valore HtmlTextWriterTag corrispondente al controllo server Web. Questa proprietà viene usata principalmente dagli sviluppatori di controlli.

(Ereditato da WebControl)
TagName

Ottiene il nome del tag del controllo. Questa proprietà viene usata principalmente dagli sviluppatori di controlli.

(Ereditato da WebControl)
TemplateControl

Ottiene o imposta un riferimento al modello che contiene il controllo.

(Ereditato da Control)
TemplateSourceDirectory

Ottiene la directory virtuale dell'oggetto Page o dell'oggetto UserControl che contiene il controllo server corrente.

(Ereditato da Control)
ToolTip

Ottiene o imposta il testo visualizzato quando il puntatore del mouse viene posizionato sul controllo server Web.

(Ereditato da WebControl)
UniqueID

Ottiene l'identificatore univoco qualificato gerarchicamente per il controllo server.

(Ereditato da Control)
ValidateRequestMode

Ottiene o imposta un valore che indica se il controllo verifica la presenza di valori potenzialmente pericolosi nell'input proveniente dal browser.

(Ereditato da Control)
ViewState

Ottiene un dizionario di informazioni sullo stato che permette di salvare e ripristinare lo stato di visualizzazione di un controllo server attraverso più richieste per la stessa pagina.

(Ereditato da Control)
ViewStateIgnoresCase

Ottiene un valore che indica se l'oggetto StateBag non effettua la distinzione tra maiuscole e minuscole.

(Ereditato da Control)
ViewStateMode

Ottiene o imposta la modalità dello stato, visualizzazione di questo controllo.

(Ereditato da Control)
Visible

Ottiene o imposta un valore che indica se viene eseguito il rendering di un controllo server come interfaccia utente nella pagina.

(Ereditato da Control)
Width

Ottiene o imposta la larghezza del controllo server Web.

(Ereditato da WebControl)

Metodi

AddAttributesToRender(HtmlTextWriter)

Aggiunge attributi e stili HTML dei quali è necessario eseguire il rendering nell'oggetto HtmlTextWriterTag specificato. Questo metodo viene utilizzato principalmente dagli sviluppatori di controlli.

(Ereditato da WebControl)
AddedControl(Control, Int32)

Chiamato dopo che un controllo figlio viene aggiunto alla raccolta Controls dell'oggetto Control.

(Ereditato da Control)
AddParsedSubObject(Object)

Notifica al controllo server che un elemento, XML o HTML, è stato analizzato e aggiunge l'elemento all'oggetto ControlCollection del controllo server.

(Ereditato da Control)
ApplyStyle(Style)

Copia tutti gli elementi non vuoti dello stile specificato nel controllo Web, sovrascrivendo eventuali elementi di stile del controllo. Il metodo viene utilizzato principalmente dagli sviluppatori di controlli.

(Ereditato da WebControl)
ApplyStyleSheetSkin(Page)

Applica al controllo le proprietà di stile definite nel foglio di stile della pagina.

(Ereditato da Control)
BeginRenderTracing(TextWriter, Object)

Inizia la traccia in fase di progettazione dei dati di rendering.

(Ereditato da Control)
BuildProfileTree(String, Boolean)

Raccoglie informazioni sul controllo server e le recapita alla proprietà Trace in modo che vengano visualizzate quando è attivata la tracciatura per la pagina.

(Ereditato da Control)
ClearCachedClientID()

Imposta il valore memorizzato nella cache ClientID su null.

(Ereditato da Control)
ClearChildControlState()

Elimina le informazioni sullo stato del controllo per i controlli figlio del controllo server.

(Ereditato da Control)
ClearChildState()

Elimina le informazioni sullo stato di visualizzazione e sullo stato del controllo per tutti i controlli figlio del controllo server.

(Ereditato da Control)
ClearChildViewState()

Elimina le informazioni sullo stato di visualizzazione per tutti i controlli figlio del controllo server.

(Ereditato da Control)
ClearEffectiveClientIDMode()

Imposta la proprietà ClientIDMode dell'istanza del controllo corrente e di tutti i controlli figlio su Inherit.

(Ereditato da Control)
ConfirmInitState()

Imposta lo stato inizializzato del controllo con associazione a dati.

(Ereditato da BaseDataBoundControl)
CopyBaseAttributes(WebControl)

Copia le proprietà non incapsulate dall'oggetto Style dal controllo server Web specificato al controllo server Web dal quale è stato chiamato il metodo. Questo metodo viene utilizzato principalmente dagli sviluppatori di controlli.

(Ereditato da WebControl)
CreateChildControls()

Viene chiamato dal framework della pagina ASP.NET per notificare ai controlli server che usano un'implementazione basata sulla composizione di creare gli eventuali controlli figlio in essi contenuti in preparazione per il postback o il rendering.

(Ereditato da Control)
CreateControlCollection()

Crea un nuovo oggetto ControlCollection per contenere i controlli figlio (valore letterale e server) del controllo del server.

(Ereditato da Control)
CreateControlStyle()

Crea l'oggetto di stile utilizzato internamente dalla classe WebControl per implementare tutte le proprietà correlate allo stile. Questo metodo viene utilizzato principalmente dagli sviluppatori di controlli.

(Ereditato da WebControl)
DataBind()

Associa un'origine dati al controllo server richiamato e a tutti i controlli figlio.

(Ereditato da BaseDataBoundControl)
DataBind(Boolean)

Associa un'origine dati al controllo server chiamato e ai relativi controlli figlio con un'opzione per generare l'evento DataBinding.

(Ereditato da Control)
DataBindChildren()

Associa un'origine dati al controllo server e ai relativi controlli figlio.

(Ereditato da Control)
Dispose()

Abilita un controllo server alla pulizia finale prima che venga rilasciato dalla memoria.

(Ereditato da Control)
EndRenderTracing(TextWriter, Object)

Termina la traccia in fase di progettazione dei dati di rendering.

(Ereditato da Control)
EnsureChildControls()

Determina se il controllo server contiene controlli figlio. In caso contrario, li crea.

(Ereditato da Control)
EnsureDataBound()

Chiama il metodo DataBind() se la proprietà DataSourceID è impostata e il controllo con associazione a dati è contrassegnato per la richiesta dell'associazione.

(Ereditato da BaseDataBoundControl)
EnsureID()

Crea un identificatore per i controlli a cui non è assegnato alcun identificatore.

(Ereditato da Control)
Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.

(Ereditato da Object)
FindControl(String)

Cerca un controllo server nel contenitore dei nomi corrente con il parametro id specificato.

(Ereditato da Control)
FindControl(String, Int32)

Cerca nel contenitore di denominazione corrente un controllo server con il parametro id indicato e un intero, specificato nel parametro pathOffset, che agevola la ricerca. Non eseguire l'override di questa versione del metodo FindControl.

(Ereditato da Control)
Focus()

Imposta lo stato attivo per l'input su un controllo.

(Ereditato da Control)
GetData(String)

Recupera un oggetto HierarchicalDataSourceView utilizzato dal controllo associato a dati per eseguire le operazioni sui dati.

GetDataSource()

Recupera la classe IHierarchicalDataSource a cui è associato il controllo con associazione a dati, se presente.

GetDesignModeState()

Ottiene i dati della fase di progettazione per un controllo.

(Ereditato da Control)
GetHashCode()

Funge da funzione hash predefinita.

(Ereditato da Object)
GetRouteUrl(Object)

Ottiene l'URL corrispondente a un set di parametri di route.

(Ereditato da Control)
GetRouteUrl(RouteValueDictionary)

Ottiene l'URL corrispondente a un set di parametri di route.

(Ereditato da Control)
GetRouteUrl(String, Object)

Ottiene l'URL che corrisponde a un set di parametri di route e a un nome della route.

(Ereditato da Control)
GetRouteUrl(String, RouteValueDictionary)

Ottiene l'URL che corrisponde a un set di parametri di route e a un nome della route.

(Ereditato da Control)
GetType()

Ottiene l'oggetto Type dell'istanza corrente.

(Ereditato da Object)
GetUniqueIDRelativeTo(Control)

Restituisce la parte con prefisso della proprietà UniqueID del controllo specificato.

(Ereditato da Control)
HasControls()

Determina se il controllo server contiene controlli figlio.

(Ereditato da Control)
HasEvents()

Restituisce un valore che indica se gli eventi vengono registrati per il controllo o eventuali controlli figlio.

(Ereditato da Control)
IsLiteralContent()

Determina se il controllo server conserva solo il contenuto literal.

(Ereditato da Control)
LoadControlState(Object)

Ripristina le informazioni sullo stato del controllo da una richiesta di pagina precedente salvata dal metodo SaveControlState().

(Ereditato da Control)
LoadViewState(Object)

Ripristina informazioni sullo stato della visualizzazione da una richiesta precedente salvata con il metodo SaveViewState().

(Ereditato da WebControl)
MapPathSecure(String)

Recupera il percorso fisico al quale è associato un percorso virtuale, assoluto o relativo.

(Ereditato da Control)
MarkAsDataBound()

Imposta lo stato del controllo nello stato di visualizzazione come associato correttamente ai dati.

MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.

(Ereditato da Object)
MergeStyle(Style)

Copia tutti gli elementi non vuoti dello stile specificato nel controllo Web, ma non sovrascrive eventuali elementi di stile del controllo. Questo metodo viene utilizzato principalmente dagli sviluppatori di controlli.

(Ereditato da WebControl)
OnBubbleEvent(Object, EventArgs)

Determina se l'evento per il controllo server viene passato a un livello superiore nella gerarchia dei controlli server dell'interfaccia utente per la pagina.

(Ereditato da Control)
OnDataBinding(EventArgs)

Genera l'evento DataBinding.

(Ereditato da Control)
OnDataBound(EventArgs)

Genera l'evento DataBound.

(Ereditato da BaseDataBoundControl)
OnDataPropertyChanged()

Viene chiamato quando una delle proprietà di identificazione dell'origine dati di base viene modificata, per riassociare il controllo con associazione a dati ai relativi dati.

OnDataSourceChanged(Object, EventArgs)

Chiamato quando l'istanza della classe IHierarchicalDataSource con cui funziona il controllo con associazione a dati genera l'evento DataSourceChanged.

OnInit(EventArgs)

Consente di gestire l'evento Init.

(Ereditato da BaseDataBoundControl)
OnLoad(EventArgs)

Consente di gestire l'evento Load.

OnPagePreLoad(Object, EventArgs)

Imposta lo stato inizializzato del controllo con associazione a dati prima del caricamento del controllo.

OnPreRender(EventArgs)

Consente di gestire l'evento PreRender.

(Ereditato da BaseDataBoundControl)
OnUnload(EventArgs)

Genera l'evento Unload.

(Ereditato da Control)
OpenFile(String)

Ottiene un oggetto Stream utilizzato per leggere un file.

(Ereditato da Control)
PerformDataBinding()

Quando si esegue l'override in una classe derivata, associa i dati dell'origine dati al controllo.

PerformSelect()

Recupera i dati dall'origine dati associata.

RaiseBubbleEvent(Object, EventArgs)

Assegna eventuali origini dell'evento e relative informazioni al controllo padre.

(Ereditato da Control)
RemovedControl(Control)

Chiamato dopo che un controllo figlio viene rimosso dalla raccolta Controls dell'oggetto Control.

(Ereditato da Control)
Render(HtmlTextWriter)

Esegue il rendering del controllo nel writer HTML specificato.

(Ereditato da WebControl)
RenderBeginTag(HtmlTextWriter)

Esegue il rendering del tag HTML di apertura del controllo nel writer specificato. Questo metodo viene utilizzato principalmente dagli sviluppatori di controlli.

(Ereditato da WebControl)
RenderChildren(HtmlTextWriter)

Restituisce il contenuto degli elementi figlio di un controllo server a un oggetto HtmlTextWriter specificato, che scrive il contenuto di cui eseguire il rendering nel client.

(Ereditato da Control)
RenderContents(HtmlTextWriter)

Esegue il rendering del contenuto del controllo nel writer specificato. Questo metodo viene utilizzato principalmente dagli sviluppatori di controlli.

(Ereditato da WebControl)
RenderControl(HtmlTextWriter)

Restituisce il contenuto del controllo server a un oggetto HtmlTextWriter specificato e archivia le informazioni di traccia relative al controllo se la funzionalità di traccia è abilitata.

(Ereditato da Control)
RenderControl(HtmlTextWriter, ControlAdapter)

Restituisce il contenuto del controllo server a un oggetto HtmlTextWriter specificato utilizzando un oggetto ControlAdapter specificato.

(Ereditato da Control)
RenderEndTag(HtmlTextWriter)

Esegue il rendering del tag HTML di chiusura del controllo nel writer specificato. Questo metodo viene utilizzato principalmente dagli sviluppatori di controlli.

(Ereditato da WebControl)
ResolveAdapter()

Ottiene l'adattatore del controllo responsabile del rendering del controllo specificato.

(Ereditato da Control)
ResolveClientUrl(String)

Ottiene un URL che può essere utilizzato dal browser.

(Ereditato da Control)
ResolveUrl(String)

Converte un URL in un formato utilizzabile dal client richiedente.

(Ereditato da Control)
SaveControlState()

Salva tutte le modifiche dello stato di un controllo server apportate dopo il postback della pagina nel server.

(Ereditato da Control)
SaveViewState()

Salva qualsiasi stato modificato dopo la chiamata del metodo TrackViewState().

(Ereditato da WebControl)
SetDesignModeState(IDictionary)

Imposta i dati della fase di progettazione per un controllo.

(Ereditato da Control)
SetRenderMethodDelegate(RenderMethod)

Assegna un delegato del gestore eventi per eseguire il rendering del controllo server e del relativo contenuto nel controllo padre.

(Ereditato da Control)
SetTraceData(Object, Object)

Imposta i dati di traccia per la traccia durante la fase di progettazione dei dati di rendering, utilizzando la chiave dei dati di traccia e il valore dei dati di traccia.

(Ereditato da Control)
SetTraceData(Object, Object, Object)

Imposta i dati di traccia per la traccia durante la fase di progettazione dei dati di rendering, utilizzando l'oggetto tracciato, la chiave dei dati di traccia e il valore dei dati di traccia.

(Ereditato da Control)
ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.

(Ereditato da Object)
TrackViewState()

Indica al controllo di tenere traccia delle modifiche apportate allo proprio stato di visualizzazione in modo che tali modifiche possano essere archiviate nella proprietà ViewState dell'oggetto.

(Ereditato da WebControl)
ValidateDataSource(Object)

Verifica la possibilità di utilizzare l'oggetto a cui è associato un controllo con associazione a dati.

Eventi

DataBinding

Viene generato quando il controllo server viene associato a un'origine dati.

(Ereditato da Control)
DataBound

Viene dopo che un controllo server viene associato a un'origine dati.

(Ereditato da BaseDataBoundControl)
Disposed

Si verifica quando un controllo server viene rilasciato dalla memoria, ossia nell'ultima fase della durata di un controllo server quando viene richiesta una pagina ASP.NET.

(Ereditato da Control)
Init

Viene generato quando il controllo server viene inizializzato, ovvero nella prima fase della sua durata.

(Ereditato da Control)
Load

Viene generato quando il controllo server è caricato nell'oggetto Page.

(Ereditato da Control)
PreRender

Si verifica dopo il caricamento dell'oggetto Control ma prima del rendering.

(Ereditato da Control)
Unload

Viene generato quando il controllo server viene scaricato dalla memoria.

(Ereditato da Control)

Implementazioni dell'interfaccia esplicita

IAttributeAccessor.GetAttribute(String)

Ottiene un attributo del controllo Web con il nome specificato.

(Ereditato da WebControl)
IAttributeAccessor.SetAttribute(String, String)

Imposta un attributo del controllo Web sul nome e il valore specificati.

(Ereditato da WebControl)
IControlBuilderAccessor.ControlBuilder

Per una descrizione di questo membro, vedere ControlBuilder.

(Ereditato da Control)
IControlDesignerAccessor.GetDesignModeState()

Per una descrizione di questo membro, vedere GetDesignModeState().

(Ereditato da Control)
IControlDesignerAccessor.SetDesignModeState(IDictionary)

Per una descrizione di questo membro, vedere SetDesignModeState(IDictionary).

(Ereditato da Control)
IControlDesignerAccessor.SetOwnerControl(Control)

Per una descrizione di questo membro, vedere SetOwnerControl(Control).

(Ereditato da Control)
IControlDesignerAccessor.UserData

Per una descrizione di questo membro, vedere UserData.

(Ereditato da Control)
IDataBindingsAccessor.DataBindings

Per una descrizione di questo membro, vedere DataBindings.

(Ereditato da Control)
IDataBindingsAccessor.HasDataBindings

Per una descrizione di questo membro, vedere HasDataBindings.

(Ereditato da Control)
IExpressionsAccessor.Expressions

Per una descrizione di questo membro, vedere Expressions.

(Ereditato da Control)
IExpressionsAccessor.HasExpressions

Per una descrizione di questo membro, vedere HasExpressions.

(Ereditato da Control)
IParserAccessor.AddParsedSubObject(Object)

Per una descrizione di questo membro, vedere AddParsedSubObject(Object).

(Ereditato da Control)

Metodi di estensione

EnablePersistedSelection(BaseDataBoundControl)
Obsoleti.

Consente di rendere persistente la selezione nei controlli dati che supportano la selezione e il paging.

FindDataSourceControl(Control)

Restituisce l'origine dati associata al controllo dati per il controllo specificato.

FindFieldTemplate(Control, String)

Restituisce il modello di campo per la colonna specificata nel contenitore di denominazione del controllo specificato.

FindMetaTable(Control)

Restituisce l'oggetto metatabella per il controllo contenitore dei dati.

Si applica a