Partager via


INamingContainer Interface

Définition

Identifie un contrôle conteneur qui crée un nouvel espace de noms d'ID dans la hiérarchie de contrôles d'un objet Page. Ceci est une interface de marqueur uniquement.

public interface class INamingContainer
public interface INamingContainer
type INamingContainer = interface
Public Interface INamingContainer
Dérivé

Exemples

L’exemple de code suivant illustre un contrôle serveur personnalisé avec modèle qui implémente l’interface INamingContainer . Lorsque ce contrôle serveur personnalisé est utilisé dans un fichier .aspx, il fournit un espace de noms unique pour tous les contrôles serveur qu’il contient.

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

Remarques

Tout contrôle qui implémente cette interface crée un espace de noms dans lequel tous les attributs d’ID de contrôle enfant sont garantis comme uniques au sein d’une application entière. Le marqueur fourni par cette interface permet d’attribuer un nommage unique aux instances de contrôle serveur générées dynamiquement dans les contrôles de serveur Web qui prennent en charge la liaison de données. Ces contrôles incluent les Repeatercontrôles , DataListDataGrid, CheckBoxList, ChangePassword, LoginView, Menu, SiteMapNodeItem, et RadioButtonList .

Lorsque vous développez des contrôles avec modèle, vous devez implémenter cette interface pour éviter les conflits de nommage sur une page. Pour plus d’informations, consultez ASP.NET Vue d’ensemble des concepteurs de contrôles.

Méthodes d’extension

GetDefaultValues(INamingContainer)

Obtient la collection des valeurs par défaut pour le contrôle de données spécifié.

GetMetaTable(INamingContainer)

Obtient les métadonnées de table pour le contrôle de données spécifié.

SetMetaTable(INamingContainer, MetaTable)

Définit les métadonnées de table pour le contrôle de données spécifié.

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

Définit les métadonnées de table et le mappage des valeurs par défaut pour le contrôle de données spécifié.

SetMetaTable(INamingContainer, MetaTable, Object)

Définit les métadonnées de table et le mappage des valeurs par défaut pour le contrôle de données spécifié.

TryGetMetaTable(INamingContainer, MetaTable)

Détermine si des métadonnées de table sont disponibles.

EnableDynamicData(INamingContainer, Type)

Active le comportement Dynamic Data pour le contrôle de données spécifié.

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

Active le comportement Dynamic Data pour le contrôle de données spécifié.

EnableDynamicData(INamingContainer, Type, Object)

Active le comportement Dynamic Data pour le contrôle de données spécifié.

S’applique à

Voir aussi