NameObjectCollectionBase.BaseAdd(String, Object) Méthode

Définition

Ajoute une entrée contenant la clé et la valeur spécifiées dans l'instance du NameObjectCollectionBase.

C#
protected void BaseAdd (string name, object value);
C#
protected void BaseAdd (string? name, object? value);

Paramètres

name
String

Clé de type String de l'entrée à ajouter. La clé peut être null.

value
Object

Valeur d'élément Object de l'entrée à ajouter. La valeur peut être null.

Exceptions

La collection est en lecture seule.

Exemples

L’exemple de code suivant utilise BaseAdd pour créer un nouveau NameObjectCollectionBase avec des éléments à partir d’un IDictionary.

C#
using System;
using System.Collections;
using System.Collections.Specialized;

public class MyCollection : NameObjectCollectionBase  {

   private DictionaryEntry _de = new DictionaryEntry();

   // Gets a key-and-value pair (DictionaryEntry) using an index.
   public DictionaryEntry this[ int index ]  {
      get  {
         _de.Key = this.BaseGetKey( index );
         _de.Value = this.BaseGet( index );
         return( _de );
      }
   }

   // Adds elements from an IDictionary into the new collection.
   public MyCollection( IDictionary d )  {
      foreach ( DictionaryEntry de in d )  {
         this.BaseAdd( (String) de.Key, de.Value );
      }
   }
}

public class SamplesNameObjectCollectionBase  {

   public static void Main()  {

      // Creates and initializes a new MyCollection instance.
      IDictionary d = new ListDictionary();
      d.Add( "red", "apple" );
      d.Add( "yellow", "banana" );
      d.Add( "green", "pear" );
      MyCollection myCol = new MyCollection( d );

      // Displays the keys and values of the MyCollection instance.
      for ( int i = 0; i < myCol.Count; i++ )  {
         Console.WriteLine( "[{0}] : {1}, {2}", i, myCol[i].Key, myCol[i].Value );
      }
   }
}


/*
This code produces the following output.

[0] : red, apple
[1] : yellow, banana
[2] : green, pear

*/

Remarques

Si Count est déjà égal à la capacité, la capacité du NameObjectCollectionBase est augmentée en réaffectant automatiquement le tableau interne, et les éléments existants sont copiés dans le nouveau tableau avant l’ajout du nouvel élément.

Si Count est inférieur à la capacité, cette méthode est une opération O(1). Si la capacité doit être augmentée pour prendre en charge le nouvel élément, cette méthode devient une opération O(n), où n est Count.

S’applique à

Produit Versions
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1
UWP 10.0