INamingContainer Interfaz
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Identifica un control contenedor que crea un nuevo espacio de nombres de Id. dentro de la jerarquía de control de un objeto Page. Ésta es sólo una interfaz de marcador.
public interface class INamingContainer
public interface INamingContainer
type INamingContainer = interface
Public Interface INamingContainer
- Derivado
Ejemplos
En el ejemplo de código siguiente se muestra un control de servidor personalizado con plantilla que implementa la INamingContainer interfaz . Cuando este control de servidor personalizado se usa en un archivo .aspx, proporcionará un espacio de nombres único para los controles de servidor que contiene.
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
Comentarios
Cualquier control que implemente esta interfaz crea un nuevo espacio de nombres en el que se garantiza que todos los atributos de identificador de control secundarios sean únicos dentro de toda una aplicación. El marcador proporcionado por esta interfaz permite la nomenclatura única de las instancias de control de servidor generadas dinámicamente dentro de los controles de servidor web que admiten el enlace de datos. Estos controles incluyen los Repeatercontroles , DataGrid, DataList, ChangePasswordCheckBoxListMenuLoginView, , SiteMapNodeItemy .RadioButtonList
Al desarrollar controles con plantilla, debe implementar esta interfaz para evitar conflictos de nomenclatura en una página. Para obtener más información, vea ASP.NET Información general sobre diseñadores de controles.
Métodos de extensión
GetDefaultValues(INamingContainer) |
Obtiene la colección de los valores predeterminados para el control de datos especificado. |
GetMetaTable(INamingContainer) |
Obtiene los metadatos de la tabla para el control de datos especificado. |
SetMetaTable(INamingContainer, MetaTable) |
Establece los metadatos de la tabla para el control de datos especificado. |
SetMetaTable(INamingContainer, MetaTable, IDictionary<String,Object>) |
Establece los metadatos de tabla y la asignación de valores predeterminados para el control de datos especificado. |
SetMetaTable(INamingContainer, MetaTable, Object) |
Establece los metadatos de tabla y la asignación de valores predeterminados para el control de datos especificado. |
TryGetMetaTable(INamingContainer, MetaTable) |
Determina si están disponibles los metadatos de la tabla. |
EnableDynamicData(INamingContainer, Type) |
Habilita el comportamiento de datos dinámicos para el control de datos especificado. |
EnableDynamicData(INamingContainer, Type, IDictionary<String,Object>) |
Habilita el comportamiento de datos dinámicos para el control de datos especificado. |
EnableDynamicData(INamingContainer, Type, Object) |
Habilita el comportamiento de datos dinámicos para el control de datos especificado. |