NameObjectCollectionBase.BaseGet Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Obtiene el valor de la entrada especificada de la NameObjectCollectionBase instancia de .
Sobrecargas
| Nombre | Description |
|---|---|
| BaseGet(Int32) |
Obtiene el valor de la entrada en el índice especificado de la NameObjectCollectionBase instancia. |
| BaseGet(String) |
Obtiene el valor de la primera entrada con la clave especificada de la NameObjectCollectionBase instancia. |
Ejemplos
En el ejemplo de código siguiente se usa BaseGetKey y BaseGet para obtener claves y valores específicos.
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)
Obtiene el valor de la entrada en el índice especificado de la NameObjectCollectionBase instancia.
protected:
System::Object ^ BaseGet(int index);
protected object BaseGet(int index);
member this.BaseGet : int -> obj
Protected Function BaseGet (index As Integer) As Object
Parámetros
- index
- Int32
Índice de base cero del valor que se va a obtener.
Devoluciones
que Object representa el valor de la entrada en el índice especificado.
Excepciones
index está fuera del intervalo válido de índices de la colección.
Comentarios
Este método es una operación O(1).
Se aplica a
BaseGet(String)
Obtiene el valor de la primera entrada con la clave especificada de la NameObjectCollectionBase instancia.
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
Parámetros
Devoluciones
que Object representa el valor de la primera entrada con la clave especificada, si se encuentra; en caso contrario, null.
Comentarios
Si la colección contiene varias entradas con la clave especificada, este método devuelve solo la primera entrada. Para obtener los valores de las entradas posteriores con la misma clave, use el enumerador para recorrer en iteración la colección y comparar las claves.
Caution
Este método devuelve null en los casos siguientes: 1) si no se encuentra la clave especificada; y 2) si se encuentra la clave especificada y su valor asociado es null. Este método no distingue entre los dos casos.
Este método es una operación O(1).