INamingContainer 接口
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
标识在 Page 对象的控件层次结构内创建新 ID 命名空间的容器控件。 这仅是一个标记接口。
public interface class INamingContainer
public interface INamingContainer
type INamingContainer = interface
Public Interface INamingContainer
- 派生
示例
下面的代码示例演示实现 INamingContainer 接口的模板化自定义服务器控件。 在 .aspx 文件中使用此自定义服务器控件时,它将为其包含的任何服务器控件提供唯一的命名空间。
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
注解
实现此接口的任何控件都会创建一个新的命名空间,在该命名空间中,保证所有子控件 ID 属性在整个应用程序中都是唯一的。 此接口提供的标记允许在支持数据绑定的 Web 服务器控件中动态生成的服务器控件实例进行唯一命名。 这些控件包括 、Repeater、DataGrid、DataList、CheckBoxListChangePassword、LoginViewMenu、SiteMapNodeItem、 和 RadioButtonList 控件。
开发模板化控件时,应实现此接口以避免页面上的命名冲突。 有关详细信息,请参阅 ASP.NET 控件设计器概述。
扩展方法
GetDefaultValues(INamingContainer) |
为指定数据控件获取默认值的集合。 |
GetMetaTable(INamingContainer) |
为指定数据控件获取表元数据。 |
SetMetaTable(INamingContainer, MetaTable) |
为指定数据控件设置表元数据。 |
SetMetaTable(INamingContainer, MetaTable, IDictionary<String,Object>) |
为指定数据控件设置表元数据和默认值映射。 |
SetMetaTable(INamingContainer, MetaTable, Object) |
为指定数据控件设置表元数据和默认值映射。 |
TryGetMetaTable(INamingContainer, MetaTable) |
确定表元数据是否可用。 |
EnableDynamicData(INamingContainer, Type) |
为指定数据控件启用动态数据行为。 |
EnableDynamicData(INamingContainer, Type, IDictionary<String,Object>) |
为指定数据控件启用动态数据行为。 |
EnableDynamicData(INamingContainer, Type, Object) |
为指定数据控件启用动态数据行为。 |