Freigeben über


Control.UniqueID-Eigenschaft

Ruft den eindeutigen, hierarchisierten Bezeichner für das Serversteuerelement ab.

Namespace: System.Web.UI
Assembly: System.Web (in system.web.dll)

Syntax

'Declaration
Public Overridable ReadOnly Property UniqueID As String
'Usage
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

Eigenschaftenwert

Der vollqualifizierte Bezeichner für das Serversteuerelement.

Hinweise

Diese Eigenschaft unterscheidet sich von der ID-Eigenschaft darin, dass die UniqueID-Eigenschaft den Bezeichner für den Benennungscontainer des Serversteuerelements enthält. Dieser Bezeichner wird automatisch bei der Verarbeitung einer Seitenanforderung generiert.

Diese Eigenschaft ist besonders wichtig beim Unterscheiden von Serversteuerelementen, die in einem sich wiederholenden Serversteuerelement mit Datenbindung enthalten sind. Das wiederholende Steuerelement, bei dem es sich um das Repeater-Webserver-Steuerelement, das DataList-Webserver-Steuerelement und das DataGrid-Webserver-Steuerelement handelt (oder jedes beliebige benutzerdefinierte Serversteuerelement, das bei Datenbindung Wiederholungsfunktionen umfasst), fungiert als Benennungscontainer für die untergeordneten Steuerelemente. Das bedeutet, dass es einen eindeutigen Namespace für seine untergeordneten Steuerelemente erstellt, sodass deren ID-Eigenschaftenwerte nicht miteinander in Konflikt stehen.

Angenommen, Sie fügen ein Label-Webserver-Steuerelement von ASP.NET in ein Repeater-Serversteuerelement ein und weisen dem Label-Steuerelement einen ID-Eigenschaftenwert von MyLabel und dem Repeater eine ID von MyRepeater zu. Wenn Sie eine Datenbindung für Repeater an ein ArrayList-Objekt mit drei Einträgen durchführen, dann sind die resultierenden UniqueID-Eigenschaften für jede Instanz der Label-Serversteuerelemente MyRepeater:ctl0:MyLabel, MyRepeater:Ctl1:MyLabel und MyRepeater:Ctl2:MyLabel.

Beispiel

Im folgenden Beispiel wird ein ArrayList-Objekt erstellt und mit drei Textzeichenfolgen aufgefüllt. Anschließend werden die Daten in der ArrayList an ein Repeater-Webserver-Steuerelement gebunden, wenn die Seite geladen wird. Wenn ein Benutzer auf die der Button1_Click-Methode zugeordnete Schaltfläche klickt, wird die UniqueID-Eigenschaft für jedes untergeordnete Steuerelement von Repeater abgerufen, das beim Aufruf der DataBind-Methode hinzugefügt wurde.

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

Plattformen

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 unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

Versionsinformationen

.NET Framework

Unterstützt in: 2.0, 1.1, 1.0

Siehe auch

Referenz

Control-Klasse
Control-Member
System.Web.UI-Namespace
Control.ID-Eigenschaft
Control.NamingContainer-Eigenschaft