DataSourceControl Classe

Definizione

Funge da classe base per controlli che rappresentano origini dati per controlli associati a dati.

public ref class DataSourceControl abstract : System::Web::UI::Control, System::ComponentModel::IListSource, System::Web::UI::IDataSource
[System.ComponentModel.Bindable(false)]
public abstract class DataSourceControl : System.Web.UI.Control, System.ComponentModel.IListSource, System.Web.UI.IDataSource
[<System.ComponentModel.Bindable(false)>]
type DataSourceControl = class
    inherit Control
    interface IDataSource
    interface IListSource
Public MustInherit Class DataSourceControl
Inherits Control
Implements IDataSource, IListSource
Ereditarietà
DataSourceControl
Derivato
Attributi
Implementazioni

Esempio

Nell'esempio di codice seguente viene illustrato come una classe può estendere la DataSourceControl classe. Il CsvDataSource controllo rappresenta i dati di file separati da virgole archiviati in un file di .csv. La CsvDataSource classe fornisce le proprie implementazioni di GetView, GetViewNamese altri metodi, perché le implementazioni della classe base non sono funzionali.

using System;
using System.Collections;
using System.Data;
using System.IO;
using System.Security.Permissions;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

// The CsvDataSource is a data source control that retrieves its
// data from a comma-separated value file.
[AspNetHostingPermission(SecurityAction.Demand, Level=AspNetHostingPermissionLevel.Minimal)]
public class CsvDataSource : DataSourceControl
{
    public CsvDataSource() : base() {}

    // The comma-separated value file to retrieve data from.
    public string FileName {
        get {
            return ((CsvDataSourceView)this.GetView(String.Empty)).SourceFile;
        }
        set {
            // Only set if it is different.
            if ( ((CsvDataSourceView)this.GetView(String.Empty)).SourceFile != value) {
                ((CsvDataSourceView)this.GetView(String.Empty)).SourceFile = value;
                RaiseDataSourceChangedEvent(EventArgs.Empty);
            }
        }
    }

    // Do not add the column names as a data row. Infer columns if the CSV file does
    // not include column names.
    public bool IncludesColumnNames {
        get {
            return ((CsvDataSourceView)this.GetView(String.Empty)).IncludesColumnNames;
        }
        set {
            // Only set if it is different.
            if ( ((CsvDataSourceView)this.GetView(String.Empty)).IncludesColumnNames != value) {
                ((CsvDataSourceView)this.GetView(String.Empty)).IncludesColumnNames = value;
                RaiseDataSourceChangedEvent(EventArgs.Empty);
            }
        }
    }

    // Return a strongly typed view for the current data source control.
    private CsvDataSourceView view = null;
    protected override DataSourceView GetView(string viewName) {
        if (null == view) {
            view = new CsvDataSourceView(this, String.Empty);
        }
        return view;
    }
    // The ListSourceHelper class calls GetList, which
    // calls the DataSourceControl.GetViewNames method.
    // Override the original implementation to return
    // a collection of one element, the default view name.
    protected override ICollection GetViewNames() {
        ArrayList al = new ArrayList(1);
        al.Add(CsvDataSourceView.DefaultViewName);
        return al as ICollection;
    }
}

// The CsvDataSourceView class encapsulates the
// capabilities of the CsvDataSource data source control.
public class CsvDataSourceView : DataSourceView
{

    public CsvDataSourceView(IDataSource owner, string name) :base(owner, DefaultViewName) {
    }

    // The data source view is named. However, the CsvDataSource
    // only supports one view, so the name is ignored, and the
    // default name used instead.
    public static string DefaultViewName = "CommaSeparatedView";

    // The location of the .csv file.
    private string sourceFile = String.Empty;
    internal string SourceFile {
        get {
            return sourceFile;
        }
        set {
            // Use MapPath when the SourceFile is set, so that files local to the
            // current directory can be easily used.
            string mappedFileName = HttpContext.Current.Server.MapPath(value);
            sourceFile = mappedFileName;
        }
    }

    // Do not add the column names as a data row. Infer columns if the CSV file does
    // not include column names.
    private bool columns = false;
    internal bool IncludesColumnNames {
        get {
            return columns;
        }
        set {
            columns = value;
        }
    }

    // Get data from the underlying data source.
    // Build and return a DataView, regardless of mode.
    protected override IEnumerable ExecuteSelect(DataSourceSelectArguments selectArgs) {
        IEnumerable dataList = null;
        // Open the .csv file.
        if (File.Exists(this.SourceFile)) {
            DataTable data = new DataTable();

            // Open the file to read from.
            using (StreamReader sr = File.OpenText(this.SourceFile)) {
                // Parse the line
                string s = "";
                string[] dataValues;
                DataColumn col;

                // Do the following to add schema.
                dataValues = sr.ReadLine().Split(',');
                // For each token in the comma-delimited string, add a column
                // to the DataTable schema.
                foreach (string token in dataValues) {
                    col = new DataColumn(token,typeof(string));
                    data.Columns.Add(col);
                }

                // Do not add the first row as data if the CSV file includes column names.
                if (! IncludesColumnNames)
                    data.Rows.Add(CopyRowData(dataValues, data.NewRow()));

                // Do the following to add data.
                while ((s = sr.ReadLine()) != null) {
                    dataValues = s.Split(',');
                    data.Rows.Add(CopyRowData(dataValues, data.NewRow()));
                }
            }
            data.AcceptChanges();
            DataView dataView = new DataView(data);
            if (!string.IsNullOrEmpty(selectArgs.SortExpression)) {
                dataView.Sort = selectArgs.SortExpression;
            }
            dataList = dataView;
        }
        else {
            throw new System.Configuration.ConfigurationErrorsException("File not found, " + this.SourceFile);
        }

        if (null == dataList) {
            throw new InvalidOperationException("No data loaded from data source.");
        }

        return dataList;
    }

    private DataRow CopyRowData(string[] source, DataRow target) {
        try {
            for (int i = 0;i < source.Length;i++) {
                target[i] = source[i];
            }
        }
        catch (System.IndexOutOfRangeException) {
            // There are more columns in this row than
            // the original schema allows.  Stop copying
            // and return the DataRow.
            return target;
        }
        return target;
    }
    // The CsvDataSourceView does not currently
    // permit deletion. You can modify or extend
    // this sample to do so.
    public override bool CanDelete {
        get {
            return false;
        }
    }
    protected override int ExecuteDelete(IDictionary keys, IDictionary values)
    {
        throw new NotSupportedException();
    }
    // The CsvDataSourceView does not currently
    // permit insertion of a new record. You can
    // modify or extend this sample to do so.
    public override bool CanInsert {
        get {
            return false;
        }
    }
    protected override int ExecuteInsert(IDictionary values)
    {
        throw new NotSupportedException();
    }
    // The CsvDataSourceView does not currently
    // permit update operations. You can modify or
    // extend this sample to do so.
    public override bool CanUpdate {
        get {
            return false;
        }
    }
    protected override int ExecuteUpdate(IDictionary keys, IDictionary values, IDictionary oldValues)
    {
        throw new NotSupportedException();
    }
}
Imports System.Collections
Imports System.Data
Imports System.IO
Imports System.Security.Permissions
Imports System.Web
Imports System.Web.UI
Imports System.Web.UI.WebControls

Namespace Samples.AspNet.VB.Controls

' The CsvDataSource is a data source control that retrieves its
' data from a comma-separated value file.
<AspNetHostingPermission(SecurityAction.Demand, Level:=AspNetHostingPermissionLevel.Minimal)> _
Public Class CsvDataSource
   Inherits DataSourceControl

   Public Sub New()
   End Sub

   ' The comma-separated value file to retrieve data from.
   Public Property FileName() As String
      Get
         Return CType(Me.GetView([String].Empty), CsvDataSourceView).SourceFile
      End Get
      Set
         ' Only set if it is different.
         If CType(Me.GetView([String].Empty), CsvDataSourceView).SourceFile <> value Then
            CType(Me.GetView([String].Empty), CsvDataSourceView).SourceFile = value
            RaiseDataSourceChangedEvent(EventArgs.Empty)
         End If
      End Set
   End Property

   ' Do not add the column names as a data row. Infer columns if the CSV file does
   ' not include column names.

   Public Property IncludesColumnNames() As Boolean
      Get
         Return CType(Me.GetView([String].Empty), CsvDataSourceView).IncludesColumnNames
      End Get
      Set
         ' Only set if it is different.
         If CType(Me.GetView([String].Empty), CsvDataSourceView).IncludesColumnNames <> value Then
            CType(Me.GetView([String].Empty), CsvDataSourceView).IncludesColumnNames = value
            RaiseDataSourceChangedEvent(EventArgs.Empty)
         End If
      End Set
   End Property


   ' Return a strongly typed view for the current data source control.
   Private view As CsvDataSourceView = Nothing

   Protected Overrides Function GetView(viewName As String) As DataSourceView
      If view Is Nothing Then
         view = New CsvDataSourceView(Me, String.Empty)
      End If
      Return view
   End Function 'GetView

   ' The ListSourceHelper class calls GetList, which
   ' calls the DataSourceControl.GetViewNames method.
   ' Override the original implementation to return
   ' a collection of one element, the default view name.
   Protected Overrides Function GetViewNames() As ICollection
      Dim al As New ArrayList(1)
      al.Add(CsvDataSourceView.DefaultViewName)
      Return CType(al, ICollection)
   End Function 'GetViewNames

End Class


' The CsvDataSourceView class encapsulates the
' capabilities of the CsvDataSource data source control.

Public Class CsvDataSourceView
   Inherits DataSourceView

   Public Sub New(owner As IDataSource, name As String)
       MyBase.New(owner, DefaultViewName)
   End Sub

   ' The data source view is named. However, the CsvDataSource
   ' only supports one view, so the name is ignored, and the
   ' default name used instead.
   Public Shared DefaultViewName As String = "CommaSeparatedView"

   ' The location of the .csv file.
   Private aSourceFile As String = [String].Empty

   Friend Property SourceFile() As String
      Get
         Return aSourceFile
      End Get
      Set
         ' Use MapPath when the SourceFile is set, so that files local to the
         ' current directory can be easily used.
         Dim mappedFileName As String
         mappedFileName = HttpContext.Current.Server.MapPath(value)
         aSourceFile = mappedFileName
      End Set
   End Property

   ' Do not add the column names as a data row. Infer columns if the CSV file does
   ' not include column names.
   Private columns As Boolean = False

   Friend Property IncludesColumnNames() As Boolean
      Get
         Return columns
      End Get
      Set
         columns = value
      End Set
   End Property

   ' Get data from the underlying data source.
   ' Build and return a DataView, regardless of mode.
   Protected Overrides Function ExecuteSelect(selectArgs As DataSourceSelectArguments) _
    As System.Collections.IEnumerable
      Dim dataList As IEnumerable = Nothing
      ' Open the .csv file.
      If File.Exists(Me.SourceFile) Then
         Dim data As New DataTable()

         ' Open the file to read from.
         Dim sr As StreamReader = File.OpenText(Me.SourceFile)

         Try
            ' Parse the line
            Dim dataValues() As String
            Dim col As DataColumn

            ' Do the following to add schema.
            dataValues = sr.ReadLine().Split(","c)
            ' For each token in the comma-delimited string, add a column
            ' to the DataTable schema.
            Dim token As String
            For Each token In dataValues
               col = New DataColumn(token, System.Type.GetType("System.String"))
               data.Columns.Add(col)
            Next token

            ' Do not add the first row as data if the CSV file includes column names.
            If Not IncludesColumnNames Then
               data.Rows.Add(CopyRowData(dataValues, data.NewRow()))
            End If

            ' Do the following to add data.
            Dim s As String
            Do
               s = sr.ReadLine()
               If Not s Is Nothing Then
                   dataValues = s.Split(","c)
                   data.Rows.Add(CopyRowData(dataValues, data.NewRow()))
               End If
            Loop Until s Is Nothing

         Finally
            sr.Close()
         End Try

         data.AcceptChanges()
         Dim dataView As New DataView(data)
         If Not selectArgs.SortExpression Is String.Empty Then
             dataView.Sort = selectArgs.SortExpression
         End If
         dataList = dataView
      Else
         Throw New System.Configuration.ConfigurationErrorsException("File not found, " + Me.SourceFile)
      End If

      If dataList is Nothing Then
         Throw New InvalidOperationException("No data loaded from data source.")
      End If

      Return dataList
   End Function 'ExecuteSelect


   Private Function CopyRowData([source]() As String, target As DataRow) As DataRow
      Try
         Dim i As Integer
         For i = 0 To [source].Length - 1
            target(i) = [source](i)
         Next i
      Catch iore As IndexOutOfRangeException
         ' There are more columns in this row than
         ' the original schema allows.  Stop copying
         ' and return the DataRow.
         Return target
      End Try
      Return target
   End Function 'CopyRowData

   ' The CsvDataSourceView does not currently
   ' permit deletion. You can modify or extend
   ' this sample to do so.
   Public Overrides ReadOnly Property CanDelete() As Boolean
      Get
         Return False
      End Get
   End Property

   Protected Overrides Function ExecuteDelete(keys As IDictionary, values As IDictionary) As Integer
      Throw New NotSupportedException()
   End Function 'ExecuteDelete

   ' The CsvDataSourceView does not currently
   ' permit insertion of a new record. You can
   ' modify or extend this sample to do so.
   Public Overrides ReadOnly Property CanInsert() As Boolean
      Get
         Return False
      End Get
   End Property

   Protected Overrides Function ExecuteInsert(values As IDictionary) As Integer
      Throw New NotSupportedException()
   End Function 'ExecuteInsert

   ' The CsvDataSourceView does not currently
   ' permit update operations. You can modify or
   ' extend this sample to do so.
   Public Overrides ReadOnly Property CanUpdate() As Boolean
      Get
         Return False
      End Get
   End Property

   Protected Overrides Function ExecuteUpdate(keys As IDictionary, _
                                              values As IDictionary, _
                                              oldValues As IDictionary) As Integer
      Throw New NotSupportedException()
   End Function 'ExecuteUpdate

End Class
End Namespace

Nell'esempio di codice seguente viene illustrato come usare il CsvDataSource controllo in un modulo Web.

<%@ Page Language="C#" %>
<%@ Register Tagprefix="aspSample"
             Namespace="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 runat="server">
    <title>ASP.NET Example</title>
</head>
<body>
    <form id="form1" runat="server">

      <asp:gridview
          id="GridView1"
          runat="server"
          allowsorting="True"
          datasourceid="CsvDataSource1" />

      <aspSample:CsvDataSource
          id = "CsvDataSource1"
          runat = "server"
          filename = "sample.csv"
          includescolumnnames="True" />

    </form>
  </body>
</html>
<%@ Page Language="VB" %>
<%@ Register Tagprefix="aspSample"
             Namespace="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 runat="server">
    <title>ASP.NET Example</title>
</head>
<body>
        <form id="form1" runat="server">

            <asp:gridview
                id="GridView1"
                runat="server"
                allowsorting="True"
                datasourceid="CsvDataSource1" />

            <aspSample:CsvDataSource
                id = "CsvDataSource1"
                runat = "server"
                filename = "sample.csv"
                includescolumnnames="True" />

        </form>
    </body>
</html>

Commenti

ASP.NET supporta un'architettura di data binding di controllo che consente ai controlli server Web di associare ai dati in modo coerente. I controlli server Web associati ai dati vengono definiti controlli associati ai dati e le classi che facilitano l'associazione vengono denominati controlli origine dati. I controlli origine dati possono rappresentare qualsiasi origine dati: un database relazionale, un file, un flusso, un oggetto business e così via. I controlli origine dati presentano dati in modo coerente ai controlli associati ai dati, indipendentemente dall'origine o dal formato dei dati sottostanti.

Per eseguire la maggior parte delle attività di sviluppo Web, usare i controlli origine dati forniti con ASP.NET, inclusi SqlDataSource, AccessDataSourcee , XmlDataSource. Usare la classe di base DataSourceControl quando si vuole implementare il proprio controllo origine dati personalizzato.

Anche se qualsiasi classe che implementa l'interfaccia IDataSource è un controllo origine dati, la maggior parte dei controlli origine dati ASP.NET estende la classe astratta DataSourceControl , che fornisce un'implementazione di base dell'interfaccia IDataSource . La DataSourceControl classe fornisce anche un'implementazione dell'interfaccia IListSource , che consente di assegnare a livello di codice il controllo origine dati alla proprietà di un controllo associato a DataSource dati e restituire i dati al controllo come elenco di base.

Qualsiasi controllo ASP.NET che deriva dalla DataBoundControl classe può essere associato a un controllo origine dati. Quando un DataBoundControl oggetto è associato a un controllo origine dati, il data binding viene eseguito automaticamente in fase di esecuzione. È anche possibile usare i controlli origine dati con controlli ASP.NET che espongono una DataSource proprietà o DataSourceID e supportano il data binding di base, ma non sono derivati da DataBoundControl. Quando si usano questi controlli associati a dati, è necessario chiamare in modo esplicito il DataBind metodo. Per altre informazioni sul data binding, vedere ASP.NET Mappa del contenuto di accesso ai dati.

È possibile pensare a un controllo origine dati come combinazione dell'oggetto DataSourceControl e degli elenchi associati di dati, denominati viste origine dati. Ogni elenco di dati è rappresentato da un DataSourceView oggetto. Poiché l'archiviazione dati sottostante contiene uno o più elenchi di dati, un DataSourceControl oggetto è sempre associato a uno o più oggetti denominati DataSourceView . L'interfaccia IDataSource definisce i metodi usati da tutti i controlli origine dati per interagire con le visualizzazioni dell'origine dati: il GetViewNames metodo viene usato per enumerare le viste origine dati attualmente associate al controllo origine dati e il GetView metodo viene usato per recuperare un'istanza specifica della visualizzazione origine dati in base al nome.

È anche possibile pensare al controllo origine dati come due interfacce distinte che i chiamanti usano per accedere ai dati. La DataSourceControl classe è l'interfaccia con cui gli sviluppatori di pagine interagiscono direttamente quando si sviluppa una pagina Web Forms e la DataSourceView classe è l'interfaccia con cui gli autori di controlli associati ai dati e gli autori di controlli associati ai dati interagiscono. Poiché l'oggetto DataSourceView è disponibile solo in fase di esecuzione, qualsiasi stato persistente per il controllo origine dati o la visualizzazione origine dati deve essere esposto direttamente dal controllo origine dati.

Non è disponibile alcun rendering visivo dei controlli ASP.NET origine dati; vengono implementati come controlli in modo da poterli creare in modo dichiarativo e, facoltativamente, consentire loro di partecipare alla gestione dello stato. Di conseguenza, i controlli origine dati non supportano funzionalità visive come EnableTheming o SkinID.

Costruttori

DataSourceControl()

Inizializza una nuova istanza della classe DataSourceControl.

Proprietà

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)
BindingContainer

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

(Ereditato da Control)
ChildControlsCreated

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

(Ereditato da Control)
ClientID

Ottiene l'identificatore del controllo server generato da ASP.NET.

ClientIDMode

Questa proprietà non viene utilizzata per i controlli origine dati.

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.

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)
DesignMode

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

(Ereditato da Control)
EnableTheming

Ottiene un valore che indica se il controllo supporta i temi.

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)
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)
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)
IsChildControlStateCleared

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

(Ereditato da Control)
IsTrackingViewState

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

(Ereditato da Control)
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)
Site

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

(Ereditato da Control)
SkinID

Ottiene l'interfaccia da applicare al controllo DataSourceControl.

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)
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 il controllo è visualizzato.

Metodi

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)
ApplyStyleSheetSkin(Page)

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

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)
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 una raccolta per l'archiviazione di controlli figlio.

DataBind()

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

(Ereditato da Control)
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)
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.

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 del controllo.

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)
GetView(String)

Ottiene la visualizzazione origine dati denominata associata al controllo origine dati.

GetViewNames()

Ottiene un insieme di nomi che rappresentano l'elenco di oggetti DataSourceView associati al controllo DataSourceControl.

HasControls()

Determina se il controllo server contiene controlli figlio.

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 le informazioni sullo stato di visualizzazione da una richiesta di pagina precedente salvata dal metodo SaveViewState().

(Ereditato da Control)
MapPathSecure(String)

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

(Ereditato da Control)
MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.

(Ereditato da Object)
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)
OnInit(EventArgs)

Genera l'evento Init.

(Ereditato da Control)
OnLoad(EventArgs)

Genera l'evento Load.

(Ereditato da Control)
OnPreRender(EventArgs)

Genera l'evento PreRender.

(Ereditato da Control)
OnUnload(EventArgs)

Genera l'evento Unload.

(Ereditato da Control)
OpenFile(String)

Ottiene un oggetto Stream utilizzato per leggere un file.

(Ereditato da Control)
RaiseBubbleEvent(Object, EventArgs)

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

(Ereditato da Control)
RaiseDataSourceChangedEvent(EventArgs)

Genera l'evento DataSourceChanged.

RemovedControl(Control)

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

(Ereditato da Control)
Render(HtmlTextWriter)

Invia il contenuto del controllo server a un oggetto HtmlTextWriter specificato che scrive il contenuto di cui eseguire il rendering nel client.

(Ereditato da Control)
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)
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.

RenderControl(HtmlTextWriter, ControlAdapter)

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

(Ereditato da Control)
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 eventuali modifiche dello stato di visualizzazione di un controllo server apportate dopo il postback della pagina nel server.

(Ereditato da Control)
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()

Attiva il rilevamento delle modifiche dello stato di visualizzazione nel controllo server per consentirne la memorizzazione nell'oggetto StateBag del controllo server. È possibile accedere a questo oggetto tramite la proprietà ViewState.

(Ereditato da Control)

Eventi

DataBinding

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

(Ereditato da Control)
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

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)
IDataSource.DataSourceChanged

Si verifica quando a un controllo origine dati sono state apportate modifiche che influiscono sui controlli con associazione a dati.

IDataSource.GetView(String)

Ottiene l'oggetto DataSourceView denominato associato al controllo DataSourceControl. Alcuni controlli origine dati supportano una sola visualizzazione, mentre altri ne supportano più di una.

IDataSource.GetViewNames()

Ottiene un insieme di nomi che rappresentano l'elenco di oggetti DataSourceView associati al controllo DataSourceControl.

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)
IListSource.ContainsListCollection

Indica se il controllo origine dati è associato a uno o più elenchi di dati.

IListSource.GetList()

Ottiene un elenco di controlli origine dati che possono essere utilizzati come origini degli elenchi di dati.

IParserAccessor.AddParsedSubObject(Object)

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

(Ereditato da Control)

Metodi di estensione

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.

GetDefaultValues(IDataSource)

Ottiene l'insieme di valori predefiniti per l'origine dati specificata.

GetMetaTable(IDataSource)

Ottiene i metadati per una tabella nell'oggetto origine dati specificato.

TryGetMetaTable(IDataSource, MetaTable)

Determina se sono disponibili i metadati della tabella.

Si applica a

Vedi anche