Control.UniqueID Eigenschaft

Definition

Ruft den eindeutigen, hierarchisierten Bezeichner für das Serversteuerelement ab.Gets the unique, hierarchically qualified identifier for the server control.

public:
 virtual property System::String ^ UniqueID { System::String ^ get(); };
[System.ComponentModel.Browsable(false)]
public virtual string UniqueID { get; }
member this.UniqueID : string
Public Overridable ReadOnly Property UniqueID As String

Eigenschaftswert

Der vollqualifizierte Bezeichner für das Serversteuerelement.The fully qualified identifier for the server control.

Attribute

Beispiele

Im folgenden Beispiel wird ein ArrayList Objekt erstellt und mit drei Text Zeichenfolgen aufgefüllt. Anschließend wird ein Repeater Webserver-Steuerelement an die Daten im ArrayList gebunden, wenn die Seite geladen wird.The following example creates an ArrayList object and populates it with three text strings, then binds a Repeater Web server control to the data in the ArrayList when the page is loaded. Der Code Ruft die UniqueID Eigenschaft für jedes untergeordnete Steuerelement ab, das während der Datenbindung generiert wird.The code gets the UniqueID property for each child control generated during data binding. Der Code generiert drei Versionen des Label-Steuer Elements und schreibt seine UniqueID Eigenschaftswerte auf die Seite.The code generates three versions of the Label control and writes their UniqueID property values to the page.

<script language="c#" runat="server">
    
  void Page_Load(Object sender, EventArgs e) 
  {
      StringBuilder sb = new StringBuilder();
      sb.Append("Container: " + 
          MyDataList.NamingContainer.ToString() + "<p>");

      ArrayList a = new ArrayList();
      a.Add("A");
      a.Add("B");
      a.Add("C");

      MyDataList.DataSource = a;
      MyDataList.DataBind();

      for (int i = 0; i < MyDataList.Controls.Count; i++)
      {
          Label l = 
              (Label)((RepeaterItem)MyDataList.Controls[i]).FindControl("MyLabel");
          sb.Append("Container: " + 
              ((RepeaterItem)MyDataList.Controls[i]).NamingContainer.ToString() + 
              "<p>");
          sb.Append("<b>" + l.UniqueID + "</b><p>");
      }
      ResultsLabel.Text = sb.ToString();
}
</script>
  <script language="vb" runat="server">
      
      Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
          Dim sb As New StringBuilder()
          sb.Append("Container: " + _
          MyDataList.NamingContainer.ToString() + "<p>")

          Dim a As New ArrayList()
          a.Add("A")
          a.Add("B")
          a.Add("C")

          MyDataList.DataSource = a
          MyDataList.DataBind()
    
          Dim i As Integer
          Dim l As Label
          For i = 0 To MyDataList.Controls.Count - 1
              l = CType(CType(MyDataList.Controls(i), RepeaterItem).FindControl("MyLabel"), Label)
              sb.Append("Container: " & _
                 CType(MyDataList.Controls(i), RepeaterItem).NamingContainer.ToString() & _
                 "<p>")
              sb.Append("<b>" & l.UniqueID.ToString() & "</b><p>")
          Next
          ResultsLabel.Text = sb.ToString()
      End Sub
</script>

Hinweise

Diese Eigenschaft unterscheidet sich von der ID-Eigenschaft, da die UniqueID-Eigenschaft den Bezeichner für den Benennungs Container des Server Steuer Elements enthält.This property differs from the ID property, in that the UniqueID property includes the identifier for the server control's naming container. Dieser Bezeichner wird automatisch generiert, wenn eine Seiten Anforderung verarbeitet wird.This identifier is generated automatically when a page request is processed.

Diese Eigenschaft ist besonders wichtig, wenn in einem Daten Bindungs Server-Steuerelement enthaltene Server Steuerelemente unterschieden werden, die sich wiederholt.This property is particularly important in differentiating server controls contained within a data-binding server control that repeats. Das sich wiederholende Steuerelement, bei dem es sich um Repeater-, DataList-, DetailsView-, FormView-und GridView-Webserver Steuerelemente handelt (oder von Ihnen erstellte benutzerdefinierte Server Steuerelemente, die sich wiederholende Funktionen einschließen), als Benennungs Container für das untergeordnete Element Steuerelemente.The repeating control, which are Repeater, DataList, DetailsView, FormView, and GridView Web server controls (or any custom server controls that you create that include repeating functionality when data bound), serves as the naming container for its child controls. Dies bedeutet, dass ein eindeutiger Namespace für seine untergeordneten Steuerelemente erstellt wird, sodass die ID Eigenschaftswerte nicht in Konflikt stehen.This means that it creates a unique namespace for its child controls so that their ID property values do not conflict.

Wenn Sie z. b. ein ASP.net-Label-Webserver Steuerelement in ein Repeater Server-Steuerelement einschließen und dem Label-Steuerelement einen ID-Eigenschafts Wert MyLabelzuweisen und Repeater einen ID MyRepeater.For example, if you include an ASP.NET Label Web server control in a Repeater server control, and assign the Label control an ID property value of MyLabel, and the Repeater an ID of MyRepeater. Wenn Sie Daten an die Repeater an ein ArrayList Objekt mit drei Einträgen binden, werden die resultierenden UniqueID Eigenschaften für jede Instanz der Label-Server Steuerelemente MyRepeater$ctl00$MyLabel, MyRepeater$ctl01$MyLabelund MyRepeater$ctl02$MyLabel.If you bind data to the Repeater to an ArrayList object with three entries, the resulting UniqueID properties for each instance of the Label server controls are MyRepeater$ctl00$MyLabel, MyRepeater$ctl01$MyLabel, and MyRepeater$ctl02$MyLabel.

Gilt für:

Siehe auch