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
Ce sujet n'a pas encore été évalué - Évaluez ce sujet

DataKeyArray, classe

Représente une collection d'objets DataKey. Cette classe ne peut pas être héritée.

System.Object
  System.Web.UI.WebControls.DataKeyArray

Espace de noms :  System.Web.UI.WebControls
Assembly :  System.Web (dans System.Web.dll)
public sealed class DataKeyArray : ICollection, 
	IEnumerable, IStateManager

Le type DataKeyArray expose les membres suivants.

  Nom Description
Méthode publique DataKeyArray Initialise une nouvelle instance de la classe DataKeyArray.
Début
  Nom Description
Propriété publique Count Obtient le nombre d'éléments de la collection.
Propriété publique IsReadOnly Obtient une valeur indiquant si les éléments de la collection peuvent être modifiés.
Propriété publique IsSynchronized Obtient une valeur indiquant si la collection DataKeyArray est synchronisée (thread-safe).
Propriété publique Item Obtient l'objet DataKey de la collection à l'index spécifié.
Propriété publique SyncRoot Obtient l'objet utilisé pour synchroniser l'accès à la collection.
Début
  Nom Description
Méthode publique CopyTo Copie tous les éléments de cette collection dans le tableau d'objets DataKey spécifié, en commençant à l'index spécifié dans le tableau.
Méthode publique Equals(Object) Détermine si l'Object spécifié est égal à l'Object en cours. (Hérité de Object.)
Méthode protégée Finalize Autorise un objet à tenter de libérer des ressources et d'exécuter d'autres opérations de netto***ge avant qu'il ne soit récupéré par l'opération garbage collection. (Hérité de Object.)
Méthode publique GetEnumerator Retourne un énumérateur qui contient tous les objets DataKey de la collection.
Méthode publique GetHashCode Sert de fonction de hachage pour un type particulier. (Hérité de Object.)
Méthode publique GetType Obtient le Type de l'instance actuelle. (Hérité de Object.)
Méthode protégée MemberwiseClone Crée une copie superficielle de l'objet Object actif. (Hérité de Object.)
Méthode publique ToString Retourne une chaîne qui représente l'objet actuel. (Hérité de Object.)
Début
  Nom Description
Méthode d'extension publique AsParallel Active la parallélisation d'une requête. (Défini par ParallelEnumerable.)
Méthode d'extension publique AsQueryable Convertit un IEnumerable en IQueryable. (Défini par Queryable.)
Méthode d'extension publique Cast<TResult> Convertit les éléments d'un IEnumerable vers le type spécifié. (Défini par Enumerable.)
Méthode d'extension publique OfType<TResult> Filtre les éléments d'un IEnumerable en fonction du type spécifié. (Défini par Enumerable.)
Début
  Nom Description
Implémentation d'interface explicite Méthode privée ICollection.CopyTo Infrastructure. Copie tous les éléments de cette collection dans le System.Array spécifié, en commençant à l'index spécifié dans System.Array.
Implémentation d'interface explicite Propriété privée IStateManager.IsTrackingViewState Infrastructure. Obtient une valeur indiquant si l'objet DataKeyArray effectue le suivi des modifications de son état d'affichage.
Implémentation d'interface explicite Méthode privée IStateManager.LoadViewState Infrastructure. Charge l'état d'affichage enregistré précédemment de l'objet DataKeyArray.
Implémentation d'interface explicite Méthode privée IStateManager.SaveViewState Infrastructure. Enregistre l'état d'affichage actuel de l'objet DataKeyArray.
Implémentation d'interface explicite Méthode privée IStateManager.TrackViewState Infrastructure. Marque le point de début du suivi et de l'enregistrement des modifications d'état d'affichage apportées à l'objet DataKeyArray.
Début

La classe DataKeyArray est utilisée pour stocker et gérer une collection d'objets DataKey. Un objet DataKey représente la clé primaire d'un enregistrement dans un contrôle lié aux données. En règle générale, les contrôles liés aux données qui affichent plusieurs enregistrements (tels que le contrôle GridView) utilisent un objet DataKeyArray pour stocker les objets DataKey pour les enregistrements affichés dans le contrôle.

La classe DataKeyArray prend en charge plusieurs modes d'accès aux éléments de la collection :

  • Utilisez l'indexeur Item pour récupérer directement un objet DataKey de la collection à un index de base zéro spécifique.

  • Utilisez la méthode GetEnumerator afin de récupérer un énumérateur pouvant être utilisé pour itérer au sein de la collection.

  • Utilisez la méthode CopyTo pour copier les éléments de la collection dans un tableau, qui peut ensuite être utilisé pour accéder aux éléments de la collection.

Utilisez la propriété Count pour déterminer le nombre total d'éléments de la collection.

L'exemple de code suivant illustre comment utiliser l'indexeur pour récupérer un objet DataKey d'une collection DataKeyArray.



<%@ Page language="C#" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

  void CustomerGridView_DataBound(Object sender, EventArgs e)
  {           
    // Use the indexer to retrieve the DataKey object for the 
    // first record.
    DataKey key = CustomerGridView.DataKeys[0];

    // Display the the value of the primary key for the first
    // record displayed in the GridView control.
    MessageLabel.Text = "The primary key of the first record displayed is " +
      key.Value.ToString() + ".";
  }

  void CopyArray_Click(Object sender, EventArgs e)
  {
      DataKeyArray theKeys = CustomerGridView.DataKeys;
      DataKey[] myNewArray = new DataKey[theKeys.Count];
      theKeys.CopyTo(myNewArray, 0);
      Label2.Visible = true;

      // Display first page key values from the new array.
      for (int i = 0; i < myNewArray.Length; i++)
      {
          Label2.Text += "<br />" + myNewArray[i].Value;
      }

  }

</script>

<html  >

  <head id="Head1" runat="server">
    <title>DataKeyArray Example</title>
</head>
<body>
    <form id="form1" runat="server">

      <h3>DataKeyArray Example</h3>

        <asp:gridview id="CustomerGridView"
          datasourceid="CustomerDataSource"
          autogeneratecolumns="true"
          datakeynames="CustomerID"  
          allowpaging="true"
          ondatabound="CustomerGridView_DataBound" 
          runat="server">

        </asp:gridview>

        <br/>

        <asp:label id="MessageLabel"
          forecolor="Red"
          runat="server"/>

        <!-- This example uses Microsoft SQL Server and connects  -->
        <!-- to the Northwind sample database. Use an ASP.NET     -->
        <!-- expression to retrieve the connection string value   -->
        <!-- from the Web.config file.                            -->
        <asp:sqldatasource id="CustomerDataSource"
          selectcommand="Select [CustomerID], [CompanyName], [Address], [City], [PostalCode], [Country] From [Customers]"
          connectionstring="<%$ ConnectionStrings:NorthwindConnectionString %>" 
          runat="server"/>

        <asp:Button ID="CopyArray" 
            runat="server" 
            Text="Copy DataKeyArray to Array" 
            OnClick="CopyArray_Click" />

        <br />

        <asp:label id="Label2"
          runat="server"
          Visible="false"  
          Text="First page of Copied Array Key Values" />


      </form>
  </body>
</html>



L'exemple de code suivant illustre comment itérer au sein d'une collection DataKeyArray.



<%@ Page language="C#" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

  void CustomerGridView_DataBound(Object sender, EventArgs e)
  {    
    // Display the the value of the primary key for each
    // record in the GridView control.
    MessageLabel.Text = "The primary key of each record displayed are: <br/><br/>";

    foreach (DataKey key in CustomerGridView.DataKeys)
    {
       MessageLabel.Text += key.Value.ToString() + "<br/>";
    }
  }

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >

  <head runat="server">
    <title>DataKeyArray Example</title>
</head>
<body>
    <form id="form1" runat="server">

      <h3>DataKeyArray Example</h3>

        <asp:gridview id="CustomerGridView"
          datasourceid="CustomerDataSource"
          autogeneratecolumns="true"
          datakeynames="CustomerID"  
          allowpaging="true"
          ondatabound="CustomerGridView_DataBound" 
          runat="server">

        </asp:gridview>

        <br/>

        <asp:label id="MessageLabel"
          forecolor="Red"
          runat="server"/>

        <!-- This example uses Microsoft SQL Server and connects  -->
        <!-- to the Northwind sample database. Use an ASP.NET     -->
        <!-- expression to retrieve the connection string value   -->
        <!-- from the Web.config file.                            -->
        <asp:sqldatasource id="CustomerDataSource"
          selectcommand="Select [CustomerID], [CompanyName], [Address], [City], [PostalCode], [Country] From [Customers]"
          connectionstring="<%$ ConnectionStrings:NorthWindConnectionString%>" 
          runat="server"/>

      </form>
  </body>
</html>



.NET Framework

Pris en charge dans : 4, 3.5, 3.0, 2.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.
Tous les membres static (Shared en Visual Basic) publics de ce type sont thread-safe. Il n'est pas garanti que les membres d'instance soient thread-safe.
Cela vous a-t-il été utile ?
(1500 caractères restants)
Contenu de la communauté Ajouter
Annotations FAQ
Microsoft réalise une enquête en ligne pour recueillir votre opinion sur le site Web de MSDN. Si vous choisissez d’y participer, cette enquête en ligne vous sera présentée lorsque vous quitterez le site Web de MSDN.

Si vous souhaitez y participer,