NameObjectCollectionBase.BaseGet Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Obtient la valeur de l’entrée spécifiée de l’instance NameObjectCollectionBase .
Surcharges
| Nom | Description |
|---|---|
| BaseGet(Int32) |
Obtient la valeur de l’entrée à l’index spécifié de l’instance NameObjectCollectionBase . |
| BaseGet(String) |
Obtient la valeur de la première entrée avec la clé spécifiée de l’instance NameObjectCollectionBase . |
Exemples
L’exemple de code suivant utilise BaseGetKey et BaseGet pour obtenir des clés et des valeurs spécifiques.
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 );
}
}
// Gets or sets the value associated with the specified key.
public Object this[ String key ] {
get {
return( this.BaseGet( key ) );
}
set {
this.BaseSet( key, value );
}
}
// 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 );
Console.WriteLine( "Initial state of the collection (Count = {0}):", myCol.Count );
PrintKeysAndValues( myCol );
// Gets specific keys and values.
Console.WriteLine( "The key at index 0 is {0}.", myCol[0].Key );
Console.WriteLine( "The value at index 0 is {0}.", myCol[0].Value );
Console.WriteLine( "The value associated with the key \"green\" is {0}.", myCol["green"] );
}
public static void PrintKeysAndValues( MyCollection myCol ) {
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.
Initial state of the collection (Count = 3):
[0] : red, apple
[1] : yellow, banana
[2] : green, pear
The key at index 0 is red.
The value at index 0 is apple.
The value associated with the key "green" is pear.
*/
Imports System.Collections
Imports System.Collections.Specialized
Public Class MyCollection
Inherits NameObjectCollectionBase
Private _de As New DictionaryEntry()
' Gets a key-and-value pair (DictionaryEntry) using an index.
Default Public ReadOnly Property Item(index As Integer) As DictionaryEntry
Get
_de.Key = Me.BaseGetKey(index)
_de.Value = Me.BaseGet(index)
Return _de
End Get
End Property
' Gets or sets the value associated with the specified key.
Default Public Property Item(key As [String]) As [Object]
Get
Return Me.BaseGet(key)
End Get
Set
Me.BaseSet(key, value)
End Set
End Property
' Adds elements from an IDictionary into the new collection.
Public Sub New(d As IDictionary)
Dim de As DictionaryEntry
For Each de In d
Me.BaseAdd(CType(de.Key, [String]), de.Value)
Next de
End Sub
End Class
Public Class SamplesNameObjectCollectionBase
Public Shared Sub Main()
' Creates and initializes a new MyCollection instance.
Dim d = New ListDictionary()
d.Add("red", "apple")
d.Add("yellow", "banana")
d.Add("green", "pear")
Dim myCol As New MyCollection(d)
Console.WriteLine("Initial state of the collection (Count = {0}):", myCol.Count)
PrintKeysAndValues(myCol)
' Gets specific keys and values.
Console.WriteLine("The key at index 0 is {0}.", myCol(0).Key)
Console.WriteLine("The value at index 0 is {0}.", myCol(0).Value)
Console.WriteLine("The value associated with the key ""green"" is {0}.", myCol("green"))
End Sub
Public Shared Sub PrintKeysAndValues(myCol As MyCollection)
Dim i As Integer
For i = 0 To myCol.Count - 1
Console.WriteLine("[{0}] : {1}, {2}", i, myCol(i).Key, myCol(i).Value)
Next i
End Sub
End Class
'This code produces the following output.
'
'Initial state of the collection (Count = 3):
'[0] : red, apple
'[1] : yellow, banana
'[2] : green, pear
'The key at index 0 is red.
'The value at index 0 is apple.
'The value associated with the key "green" is pear.
BaseGet(Int32)
Obtient la valeur de l’entrée à l’index spécifié de l’instance NameObjectCollectionBase .
protected:
System::Object ^ BaseGet(int index);
protected object BaseGet(int index);
member this.BaseGet : int -> obj
Protected Function BaseGet (index As Integer) As Object
Paramètres
- index
- Int32
Index de base zéro de la valeur à obtenir.
Retours
Qui Object représente la valeur de l’entrée à l’index spécifié.
Exceptions
index est en dehors de la plage valide d’index pour la collection.
Remarques
Cette méthode est une opération O(1).
S’applique à
BaseGet(String)
Obtient la valeur de la première entrée avec la clé spécifiée de l’instance NameObjectCollectionBase .
protected:
System::Object ^ BaseGet(System::String ^ name);
protected object BaseGet(string name);
member this.BaseGet : string -> obj
Protected Function BaseGet (name As String) As Object
Paramètres
Retours
Qui Object représente la valeur de la première entrée avec la clé spécifiée, si elle est trouvée ; sinon, null.
Remarques
Si la collection contient plusieurs entrées avec la clé spécifiée, cette méthode retourne uniquement la première entrée. Pour obtenir les valeurs des entrées suivantes avec la même clé, utilisez l’énumérateur pour itérer dans la collection et comparer les clés.
Avertissement
Cette méthode retourne null dans les cas suivants : 1) si la clé spécifiée est introuvable ; et 2) si la clé spécifiée est trouvée et sa valeur associée est null. Cette méthode ne fait pas la distinction entre les deux cas.
Cette méthode est une opération O(1).