INamingContainer Interfaccia

Definizione

Identifica un controllo contenitore che crea un nuovo spazio dei nomi ID nella gerarchia dei controlli di un oggetto Page. Si tratta esclusivamente di un'interfaccia marcatore.

public interface class INamingContainer
public interface INamingContainer
type INamingContainer = interface
Public Interface INamingContainer
Derivato

Esempio

Nell'esempio di codice seguente viene illustrato un controllo server personalizzato con modelli che implementa INamingContainer l'interfaccia . Quando questo controllo server personalizzato viene usato in un file aspx, fornirà uno spazio dei nomi univoco per tutti i controlli server in esso contenuti.

using System;
using System.Collections;
using System.Web;
using System.Web.UI;

namespace TemplateControlSamples {

    public class RepeaterItem : Control, INamingContainer {

        private int itemIndex;
        private object dataItem;

        public RepeaterItem(int itemIndex, object dataItem) {
            this.itemIndex = itemIndex;
            this.dataItem = dataItem;
        }

        public object DataItem {
            get {
                return dataItem;
            }
        }

        public int ItemIndex {
            get {
                return itemIndex;
            }
        }
    }
}
Imports System.Collections
Imports System.Web
Imports System.Web.UI

Namespace TemplateControlSamplesVB

    Public Class RepeaterItemVB : Inherits Control : Implements INamingContainer

        Private _ItemIndex As Integer
        Private _DataItem As Object

        Public Sub New(ItemIndex As Integer, DataItem As Object)
            MyBase.New()
            _ItemIndex = ItemIndex
            _DataItem = DataItem
        End Sub

        Public ReadOnly Property DataItem As Object
            Get
                return _DataItem
            End Get
        End Property

        Public ReadOnly Property ItemIndex As Integer
            Get
                return _ItemIndex
            End Get
        End Property

    End Class

End Namespace

Commenti

Qualsiasi controllo che implementa questa interfaccia crea un nuovo spazio dei nomi in cui tutti gli attributi id del controllo figlio sono garantiti univoci all'interno di un'intera applicazione. Il marcatore fornito da questa interfaccia consente la denominazione univoca delle istanze del controllo server generate dinamicamente all'interno dei controlli server Web che supportano data binding. Questi controlli includono Repeater i controlli , , , , , , DataGrid e DataList CheckBoxList ChangePassword LoginView Menu SiteMapNodeItem RadioButtonList .

Quando si sviluppano controlli modello, è necessario implementare questa interfaccia per evitare conflitti di denominazione in una pagina. Per altre informazioni, vedere Cenni preliminariASP.NET finestre di progettazione controlli .

Metodi di estensione

GetDefaultValues(INamingContainer)

Ottiene l'insieme di valori predefiniti per il controllo dei dati specificato.

GetMetaTable(INamingContainer)

Ottiene i metadati della tabella per il controllo dei dati specificato.

SetMetaTable(INamingContainer, MetaTable)

Imposta i metadati della tabella per il controllo dei dati specificato.

SetMetaTable(INamingContainer, MetaTable, IDictionary<String,Object>)

Imposta il mapping dei valori predefiniti e dei metadati della tabella per il controllo dei dati specificato.

SetMetaTable(INamingContainer, MetaTable, Object)

Imposta il mapping dei valori predefiniti e dei metadati della tabella per il controllo dei dati specificato.

TryGetMetaTable(INamingContainer, MetaTable)

Determina se sono disponibili i metadati della tabella.

EnableDynamicData(INamingContainer, Type)

Abilita il comportamento dati dinamici per il controllo dei dati specificato.

EnableDynamicData(INamingContainer, Type, IDictionary<String,Object>)

Abilita il comportamento dati dinamici per il controllo dei dati specificato.

EnableDynamicData(INamingContainer, Type, Object)

Abilita il comportamento dati dinamici per il controllo dei dati specificato.

Si applica a

Vedi anche