Exporter (0) Imprimer
Développer tout
Cet article a fait l'objet d'une traduction manuelle. Déplacez votre pointeur sur les phrases de l'article pour voir la version originale de ce texte.
Traduction
Source

Control.UniqueID, propriété

Obtient l'identificateur unique qualifié sur le plan hiérarchique du contrôle serveur.

Espace de noms :  System.Web.UI
Assembly :  System.Web (dans System.Web.dll)

[BrowsableAttribute(false)]
public virtual string UniqueID { get; }

Valeur de propriété

Type : System.String
Identificateur complet du contrôle serveur.

Cette propriété diffère de la propriété ID, en ce sens que la propriété UniqueID comprend l'identificateur du conteneur d'attribution de noms du contrôle serveur. Cet identificateur est généré automatiquement lors du traitement d'une demande de page.

Cette propriété est particulièrement importante pour la différenciation des contrôles serveur contenus dans un autre contrôle serveur de liaison de données qui est répété. Le contrôle répété, c'est-à-dire un des contrôles serveur Web Repeater, DataList, DetailsView, FormView et GridView (ou tout contrôle serveur personnalisé que vous créez comprenant des fonctionnalités de répétition lorsqu'il est lié aux données), joue le rôle de conteneur d'attribution de noms pour ses contrôles enfants. Cela signifie qu'il crée un espace de noms unique pour ses contrôles enfants afin que les valeurs de leurs propriétés ID n'entrent pas en conflit.

Par exemple, si vous insérez un contrôle serveur Web ASP.NET Label dans un contrôle serveur Repeater, puis vous assignez à la propriété ID du contrôle Label la valeur MyLabel et à Repeater la valeur MyRepeater pour ID. Si vous liez des données au Repeater d'un objet ArrayList possédant trois entrées, les propriétés UniqueID obtenues pour chaque instance des contrôles serveur Label sont MyRepeater$ctl00$MyLabel, MyRepeater$ctl01$MyLabel et MyRepeater$ctl02$MyLabel.

L'exemple suivant crée un objet ArrayList et le remplit avec trois chaînes de texte, puis lie un contrôle serveur Web Repeater aux données de ArrayList au moment du chargement de la page. Le code reçoit la propriété UniqueID pour chaque contrôle enfant généré pendant la liaison aux données. Le code génère trois versions du contrôle Label et écrit les valeurs de leur propriété UniqueID dans la 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>


.NET Framework

Pris en charge dans : 4, 3.5, 3.0, 2.0, 1.1, 1.0

Windows 7, Windows Vista SP1 ou ultérieur, Windows XP SP3, Windows XP SP2 Édition x64, Windows Server 2008 (installation minimale non prise en charge), Windows Server 2008 R2 (installation minimale prise en charge avec SP1 ou version ultérieure), Windows Server 2003 SP2

Le .NET Framework ne prend pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.

Ajouts de la communauté

AJOUTER
Afficher:
© 2014 Microsoft