INamingContainer Interface
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Identifica um controle de contêiner que cria um novo namespace de ID dentro da hierarquia de controle de um Page objeto. Essa é apenas uma interface de marcador.
public interface class INamingContainer
public interface INamingContainer
type INamingContainer = interface
Public Interface INamingContainer
- Derivado
Exemplos
O exemplo de código a seguir demonstra um controle de servidor personalizado modelo que implementa a INamingContainer interface. Quando esse controle de servidor personalizado for usado em um arquivo .aspx, ele fornecerá um namespace exclusivo para todos os controles de servidor que ele contiver.
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
Comentários
Qualquer controle que implemente essa interface cria um novo namespace no qual todos os atributos de ID de controle filho são garantidos como exclusivos em um aplicativo inteiro. O marcador fornecido por essa interface permite a nomenclatura exclusiva das instâncias de controle de servidor geradas dinamicamente dentro dos controles do servidor Web que dão suporte à associação de dados. Esses controles incluem os Repeatercontroles , , DataGrid, DataList, ChangePasswordCheckBoxList, LoginView, MenuSiteMapNodeItemeRadioButtonList.
Ao desenvolver controles com modelo, você deve implementar essa interface para evitar conflitos de nomenclatura em uma página. Para obter mais informações, consulte ASP.NET Visão geral dos Designers de Controle.
Métodos de Extensão
| Nome | Description |
|---|---|
| EnableDynamicData(INamingContainer, Type, IDictionary<String,Object>) |
Habilita o comportamento de Dados Dinâmicos para o controle de dados especificado. |
| EnableDynamicData(INamingContainer, Type, Object) |
Habilita o comportamento de Dados Dinâmicos para o controle de dados especificado. |
| EnableDynamicData(INamingContainer, Type) |
Habilita o comportamento de Dados Dinâmicos para o controle de dados especificado. |
| GetDefaultValues(INamingContainer) |
Obtém a coleção dos valores padrão para o controle de dados especificado. |
| GetMetaTable(INamingContainer) |
Obtém os metadados da tabela para o controle de dados especificado. |
| SetMetaTable(INamingContainer, MetaTable, IDictionary<String,Object>) |
Define os metadados da tabela e o mapeamento de valor padrão para o controle de dados especificado. |
| SetMetaTable(INamingContainer, MetaTable, Object) |
Define os metadados da tabela e o mapeamento de valor padrão para o controle de dados especificado. |
| SetMetaTable(INamingContainer, MetaTable) |
Define os metadados da tabela para o controle de dados especificado. |
| TryGetMetaTable(INamingContainer, MetaTable) |
Determina se os metadados da tabela estão disponíveis. |