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 à partir de l'instance du NameObjectCollectionBase.
Surcharges
BaseGet(Int32) |
Obtient la valeur de l'entrée à l'index spécifié de l'instance du NameObjectCollectionBase. |
BaseGet(String) |
Obtient la valeur de la première entrée ayant la clé spécifiée dans l'instance du NameObjectCollectionBase. |
Exemples
L’exemple de code suivant utilise BaseGetKey et BaseGet pour obtenir des clés et des valeurs spécifiques.
#using <System.dll>
using namespace System;
using namespace System::Collections;
using namespace System::Collections::Specialized;
public ref class MyCollection : public NameObjectCollectionBase {
private:
DictionaryEntry^ _de;
// Gets a key-and-value pair (DictionaryEntry) using an index.
public:
property DictionaryEntry^ default[ int ] {
DictionaryEntry^ get( int index ) {
_de->Key = this->BaseGetKey( index );
_de->Value = this->BaseGet( index );
return( _de );
}
}
// Gets or sets the value associated with the specified key.
property Object^ default[ String^ ] {
Object^ get(String^ key) {
return( this->BaseGet( key ) );
}
void set( String^ key, Object^ value ) {
this->BaseSet( key, value );
}
}
// Adds elements from an IDictionary into the new collection.
MyCollection( IDictionary^ d ) {
_de = gcnew DictionaryEntry();
for each ( DictionaryEntry^ de in d ) {
this->BaseAdd( (String^) de->Key, de->Value );
}
}
};
public ref class SamplesNameObjectCollectionBase {
public:
static void Main() {
// Creates and initializes a new MyCollection instance.
IDictionary^ d = gcnew ListDictionary();
d->Add( "red", "apple" );
d->Add( "yellow", "banana" );
d->Add( "green", "pear" );
MyCollection^ myCol = gcnew 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"] );
}
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 );
}
}
};
int main()
{
SamplesNameObjectCollectionBase::Main();
}
/*
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.
*/
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)
- Source:
- NameObjectCollectionBase.cs
- Source:
- NameObjectCollectionBase.cs
- Source:
- NameObjectCollectionBase.cs
Obtient la valeur de l'entrée à l'index spécifié de l'instance du NameObjectCollectionBase.
protected:
System::Object ^ BaseGet(int index);
protected 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
Object qui représente la valeur de l'entrée à l'index spécifié.
Exceptions
index
est en dehors de la plage valide des index pour la collection.
Remarques
Cette méthode est une opération O(1).
S’applique à
BaseGet(String)
- Source:
- NameObjectCollectionBase.cs
- Source:
- NameObjectCollectionBase.cs
- Source:
- NameObjectCollectionBase.cs
Obtient la valeur de la première entrée ayant la clé spécifiée dans l'instance du NameObjectCollectionBase.
protected:
System::Object ^ BaseGet(System::String ^ name);
protected object BaseGet (string name);
protected object? BaseGet (string? name);
member this.BaseGet : string -> obj
Protected Function BaseGet (name As String) As Object
Paramètres
Retours
Object qui représente la valeur de la première entrée ayant la clé spécifiée, si elle existe ; 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.
Attention
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 de distinction entre les deux cas.
Cette méthode est une opération O(1).