Versión imprimible      Enviar     
Califique este contenido
Esta página es específica de
Microsoft Visual Studio 2005/.NET Framework 2.0

Hay además otras versiones disponibles para:
INamingContainer (Interfaz)
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.

Espacio de nombres: System.Web.UI
Ensamblado: System.Web (en system.web.dll)

Visual Basic (Declaración)
Public Interface INamingContainer
Visual Basic (Uso)
Dim instance As INamingContainer
C#
public interface INamingContainer
C++
public interface class INamingContainer
J#
public interface INamingContainer
JScript
public interface INamingContainer
XAML
No aplicable.

Cualquier control que implemente esta interfaz, crea un nuevo espacio de nombres en el cual se garantiza que todos los atributos del Id. de controles secundarios son únicos dentro de una aplicación. El marcador que proporciona esta interfaz permite asignar nombres únicos a instancias de controles de servidor generadas dinámicamente en el ámbito de los controles de servidor Web que admitan el enlace de datos. Estos controles incluyen los controles Repeater, DataGrid, DataList, CheckBoxList, ChangePassword, LoginView, Menu, SiteMapNodeItem y RadioButtonList.

Cuando se desarrollan controles de plantilla, se debe implementar esta interfaz para evitar que se produzcan conflictos de nombres en una página. Para obtener más información, vea Información general sobre los diseñadores de controles ASP.NET.

En el ejemplo de código siguiente se muestra un control de servidor personalizado con plantilla que implementa la interfaz INamingContainer. Al utilizar este control de servidor personalizado en un archivo .aspx, proporcionará un espacio de nombres único para cualquier control de servidor que lo contenga.

Visual Basic
Imports System
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
C#
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;
            }
        }
    }
}
J#
package TemplateControlSamples;

import System.*;
import System.Collections.*;
import System.Web.*;
import System.Web.UI.*;

public class RepeaterItem extends Control implements INamingContainer
{
    private int itemIndex;
    private Object dataItem;

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

    /** @property 
     */
    public Object get_DataItem()
    {
        return dataItem;
    } //get_DataItem

    /** @property 
     */
    public int get_ItemIndex()
    {
        return itemIndex;
    } //get_ItemIndex
} //RepeaterItem
JScript
import System;
import System.Collections;
import System.Web;
import System.Web.UI;

package TemplateControlSamples {

    public class RepeaterItem extends Control implements INamingContainer {

        private var itemIndex : int;
        private var dataItem;

        function RepeaterItem(itemIndex : int, dataItem) {
            this.itemIndex = itemIndex;
            this.dataItem = dataItem;
        }

        function get DataItem() {
            return dataItem;
        }

        function get ItemIndex() : int {
            return itemIndex;
        }
    }
}

Windows 98, Windows 2000 Service Pack 4, Windows CE, Windows Millennium, Windows Mobile para Pocket PC, Windows Mobile para Smartphone, Windows Server 2003, Windows XP Media Center, Windows XP Professional x64, Windows XP SP2, Windows XP Starter

Microsoft .NET Framework 3.0 es compatible con Windows Vista, Microsoft Windows XP SP2 y Windows Server 2003 SP1.

.NET Framework

Compatible con: 3.0, 2.0, 1.1, 1.0
© 2008 Microsoft Corporation. Reservados todos los derechos. Temas legales  |  Marcas Registradas  |  Declaración de privacidad
Page view tracker