Share via


INamingContainer Antarmuka

Definisi

Mengidentifikasi kontrol kontainer yang membuat namespace ID baru dalam Page hierarki kontrol objek. Ini hanya antarmuka penanda.

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

Contoh

Contoh kode berikut menunjukkan kontrol server kustom templat yang mengimplementasikan INamingContainer antarmuka. Ketika kontrol server kustom ini digunakan dalam file .aspx, kontrol server kustom ini akan menyediakan namespace unik untuk kontrol server apa pun yang dikandungnya.

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

Keterangan

Kontrol apa pun yang mengimplementasikan antarmuka ini membuat namespace baru di mana semua atribut ID kontrol anak dijamin unik dalam seluruh aplikasi. Penanda yang disediakan oleh antarmuka ini memungkinkan penamaan unik instans kontrol server yang dihasilkan secara dinamis dalam kontrol server Web yang mendukung pengikatan data. Kontrol ini mencakup Repeaterkontrol , , DataGridDataList, CheckBoxList, ChangePassword, LoginView, Menu, SiteMapNodeItemdan RadioButtonList .

Saat Anda mengembangkan kontrol templat, Anda harus mengimplementasikan antarmuka ini untuk menghindari konflik penamaan pada halaman. Untuk informasi selengkapnya, lihat Gambaran Umum Perancang Kontrol ASP.NET.

Metode Ekstensi

GetDefaultValues(INamingContainer)

Mendapatkan kumpulan nilai default untuk kontrol data yang ditentukan.

GetMetaTable(INamingContainer)

Mendapatkan metadata tabel untuk kontrol data yang ditentukan.

SetMetaTable(INamingContainer, MetaTable)

Mengatur metadata tabel untuk kontrol data yang ditentukan.

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

Mengatur metadata tabel dan pemetaan nilai default untuk kontrol data yang ditentukan.

SetMetaTable(INamingContainer, MetaTable, Object)

Mengatur metadata tabel dan pemetaan nilai default untuk kontrol data yang ditentukan.

TryGetMetaTable(INamingContainer, MetaTable)

Menentukan apakah metadata tabel tersedia.

EnableDynamicData(INamingContainer, Type)

Mengaktifkan perilaku Data Dinamis untuk kontrol data yang ditentukan.

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

Mengaktifkan perilaku Data Dinamis untuk kontrol data yang ditentukan.

EnableDynamicData(INamingContainer, Type, Object)

Mengaktifkan perilaku Data Dinamis untuk kontrol data yang ditentukan.

Berlaku untuk

Lihat juga