获取服务器控件的唯一的、以分层形式限定的标识符。
命名空间:System.Web.UI
程序集:System.Web(在 system.web.dll 中)
Public Overridable ReadOnly Property UniqueID As String
Dim instance As Control
Dim value As String
value = instance.UniqueID
public virtual string UniqueID { get; }
public:
virtual property String^ UniqueID {
String^ get ();
}
/** @property */
public String get_UniqueID ()
public function get UniqueID () : String
属性值
服务器控件的完全限定标识符。
此属性与 ID 属性不同,因为 UniqueID 属性包含服务器控件命名容器的标识符。处理页请求时自动生成此标识符。
此属性对于区分包含在其他重复的数据绑定服务器控件中的服务器控件尤其重要。重复控件包括 Repeater、DataList 和 DataGridWeb 服务器控件(或任何在数据绑定时创建的包含重复功能的自定义服务器控件),它们充当其子控件的命名容器。这意味着它为其子控件创建唯一的命名空间,以使它们的 ID 属性值不冲突。
例如,如果将 ASP.NETLabelWeb 服务器控件包含在 Repeater 服务器控件中,并给 Label 控件赋以 MyLabel 的 ID 属性值,给 Repeater 赋以 MyRepeater 的 ID 属性值。如果将 Repeater 数据绑定到具有三个项的 ArrayList 对象,则 Label 服务器控件的每个实例所产生的 UniqueID 属性是 MyRepeater:ctl0:MyLabel、MyRepeater:Ctl1:MyLabel 和 MyRepeater:Ctl2:MyLabel。
下面的示例创建了一个 ArrayList 对象并在其中填充了三个文本字符串,然后在加载页时将 ArrayList 中的数据绑定到了一个 Repeater Web 服务器控件。用户单击与 Button1_Click 方法相关联的按钮时,将会获得调用 DataBind 方法时添加的 Repeater 的每个子控件的 UniqueID 属性。
Private Sub Page_Load(sender As Object, e As EventArgs)
' Intialise ArrayList.
Dim myArray As New ArrayList()
myArray.Add("Hello")
myArray.Add("World")
myArray.Add("!")
' Bind ArrayList to Repeater control.
Repeater1.DataSource = myArray
Repeater1.DataBind()
End Sub
Private Sub Button1_Click(sender As Object, e As EventArgs)
Dim i As Integer
For i = 0 To Repeater1.Controls.Count - 1
Response.Write("<br>")
Response.Write(Repeater1.Controls(i).UniqueID)
Next i
End Sub
private void Page_Load(object sender, EventArgs e)
{
// Intialise ArrayList.
ArrayList myArray = new ArrayList();
myArray.Add("Hello");
myArray.Add("World");
myArray.Add("!");
// Bind ArrayList to Repeater control.
Repeater1.DataSource = myArray;
Repeater1.DataBind();
}
private void Button1_Click(object sender, EventArgs e)
{
for (int i=0; i<Repeater1.Controls.Count; i++)
{
Response.Write("<br>");
Response.Write(Repeater1.Controls[i].UniqueID);
}
}
private void Page_Load(Object sender, EventArgs e)
{
// Intialise ArrayList.
ArrayList myArray = new ArrayList();
myArray.Add("Hello");
myArray.Add("World");
myArray.Add("!");
// Bind ArrayList to Repeater control.
Repeater1.set_DataSource(myArray);
Repeater1.DataBind();
} //Page_Load
private void Button1_Click(Object sender, EventArgs e)
{
for(int i=0;i < Repeater1.get_Controls().get_Count();i++) {
get_Response().Write("<br>");
get_Response().Write(
Repeater1.get_Controls().get_Item(i).get_UniqueID());
}
} //Button1_Click
Windows 98、Windows 2000 SP4、Windows Server 2003、Windows XP Media Center Edition、Windows XP Professional x64 Edition、Windows XP SP2、Windows XP Starter Edition
.NET Framework 并不是对每个平台的所有版本都提供支持。有关受支持版本的列表,请参见系统要求。
.NET Framework
受以下版本支持:2.0、1.1、1.0