INamingContainer インターフェイス

Page オブジェクトのコントロール階層内に新しい ID 名前空間を作成するコンテナ コントロールを識別します。このインターフェイスは、マーカー インターフェイスとして用意されているだけです。

名前空間: System.Web.UI
アセンブリ: System.Web (system.web.dll 内)

構文

'宣言
Public Interface INamingContainer
'使用
Dim instance As INamingContainer
public interface INamingContainer
public interface class INamingContainer
public interface INamingContainer
public interface INamingContainer
適用できません。

解説

このインターフェイスを実装するすべてのコントロールは、すべての子コントロール ID 属性がアプリケーション全体で確実に一意になるような新しい名前空間を作成します。このインターフェイスで提供されているマーカーによって、データ連結をサポートする Web サーバー コントロール内で、動的に生成されるサーバー コントロール インスタンスに一意の名前を付けることができます。これらのサーバー コントロールには、RepeaterDataGridDataListCheckBoxListChangePasswordLoginViewMenuSiteMapNodeItem、および RadioButtonList の各コントロールが含まれます。

テンプレートを使用したコントロールを開発する場合は、このインターフェイスを実装し、ページ上で名前が競合しないようにする必要があります。詳細については、「ASP.NET コントロール デザイナの概要」を参照してください。

トピック 場所
方法 : template 宣言された ASP.NET ユーザー コントロールを作成する Visual Studio ASP .NET での Web アプリケーションの作成
方法 : template 宣言された ASP.NET ユーザー コントロールを作成する Visual Studio ASP .NET での Web アプリケーションの作成
方法 : template 宣言された ASP.NET ユーザー コントロールを作成する ASP .NET Web アプリケーションの作成

使用例

テンプレートを使用したカスタム サーバー コントロールで INamingContainer インターフェイスを実装するコード例を次に示します。.aspx ファイルでこのカスタム サーバー コントロールを使用すると、格納されているサーバー コントロールに一意の名前空間が提供されます。

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
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;
            }
        }
    }
}
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
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 Server 2000 SP4,Windows CE,Windows Millennium Edition,Windows Mobile for Pocket PC,Windows Mobile for Smartphone,Windows Server 2003,Windows XP Media Center Edition,Windows XP Professional x64 Edition,Windows XP SP2,Windows XP Starter Edition

Microsoft .NET Framework 3.0 は Windows Vista,Microsoft Windows XP SP2,および Windows Server 2003 SP1 でサポートされています。

バージョン情報

.NET Framework

サポート対象 : 3.0,2.0,1.1,1.0

参照

関連項目

INamingContainer メンバ
System.Web.UI 名前空間
Control
Page

その他の技術情報

ASP.NET コントロール デザイナの概要