Control.UniqueID Vlastnost

Definice

Získá jedinečný a hierarchicky kvalifikovaný identifikátor pro serverový ovládací prvek.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; }
[<System.ComponentModel.Browsable(false)>]
member this.UniqueID : string
Public Overridable ReadOnly Property UniqueID As String

Hodnota vlastnosti

String

Plně kvalifikovaný identifikátor ovládacího prvku serveru.The fully qualified identifier for the server control.

Atributy

Příklady

Následující příklad vytvoří ArrayList objekt a naplní jej třemi textovými řetězci a potom sváže Repeater ovládací prvek webového serveru s daty v ArrayList okamžiku, kdy je stránka načtena.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. Kód získá UniqueID vlastnost pro každý podřízený ovládací prvek generovaný během vytváření datové vazby.The code gets the UniqueID property for each child control generated during data binding. Kód generuje tři verze Label ovládacího prvku a zapisuje jejich UniqueID hodnoty vlastností na stránku.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>

Poznámky

Tato vlastnost se liší od ID vlastnosti, v níž UniqueID vlastnost obsahuje identifikátor pro názvový kontejner ovládacího prvku serveru.This property differs from the ID property, in that the UniqueID property includes the identifier for the server control's naming container. Tento identifikátor se vygeneruje automaticky při zpracování žádosti o stránku.This identifier is generated automatically when a page request is processed.

Tato vlastnost je zvláště důležitá pro odlišení serverových ovládacích prvků obsažených v ovládacím prvku serveru s datovou vazbou, který se opakuje.This property is particularly important in differentiating server controls contained within a data-binding server control that repeats. Opakující se ovládací prvky, které jsou,,, Repeater DataList DetailsView FormView a GridView webový server (nebo jakékoli vlastní serverové ovládací prvky, které vytvoříte, které obsahují opakující se funkce, když jsou data vázaná) slouží jako názvový kontejner pro své podřízené ovládací prvky.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. To znamená, že pro své podřízené ovládací prvky vytvoří jedinečný obor názvů, aby jejich ID hodnoty vlastností nebyly v konfliktu.This means that it creates a unique namespace for its child controls so that their ID property values do not conflict.

Například pokud zahrnete Label ovládací prvek webového serveru ASP.NET v Repeater ovládacím prvku serveru a přiřadíte Label ovládacímu prvku ID hodnotu vlastnosti MyLabel a a Repeater 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. Pokud svážete data s Repeater ArrayList objektem se třemi položkami, výsledné UniqueID vlastnosti pro každou instanci Label ovládacích prvků serveru jsou MyRepeater$ctl00$MyLabel , MyRepeater$ctl01$MyLabel a 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.

Platí pro

Viz také