NameObjectCollectionBase.BaseSet Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Legt den Wert eines Eintrags in der NameObjectCollectionBase Instanz fest.
Überlädt
| Name | Beschreibung |
|---|---|
| BaseSet(Int32, Object) |
Legt den Wert des Eintrags am angegebenen Index der NameObjectCollectionBase Instanz fest. |
| BaseSet(String, Object) |
Legt den Wert des ersten Eintrags mit dem angegebenen Schlüssel in der NameObjectCollectionBase Instanz fest, falls gefunden. Andernfalls wird der Instanz ein Eintrag mit dem angegebenen Schlüssel und Wert NameObjectCollectionBase hinzugefügt. |
Beispiele
Im folgenden Codebeispiel wird BaseSet der Wert eines bestimmten Elements festgelegt.
using System;
using System.Collections;
using System.Collections.Specialized;
public class MyCollection : NameObjectCollectionBase {
// Gets or sets the value at the specified index.
public Object this[ int index ] {
get {
return( this.BaseGet( index ) );
}
set {
this.BaseSet( index, value );
}
}
// 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 );
}
}
// Gets a String array that contains all the keys in the collection.
public String[] AllKeys {
get {
return( this.BaseGetAllKeys() );
}
}
// 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:" );
PrintKeysAndValues2( myCol );
Console.WriteLine();
// Sets the value at index 1.
myCol[1] = "sunflower";
Console.WriteLine( "After setting the value at index 1:" );
PrintKeysAndValues2( myCol );
Console.WriteLine();
// Sets the value associated with the key "red".
myCol["red"] = "tulip";
Console.WriteLine( "After setting the value associated with the key \"red\":" );
PrintKeysAndValues2( myCol );
}
public static void PrintKeysAndValues2( MyCollection myCol ) {
foreach ( String s in myCol.AllKeys ) {
Console.WriteLine( "{0}, {1}", s, myCol[s] );
}
}
}
/*
This code produces the following output.
Initial state of the collection:
red, apple
yellow, banana
green, pear
After setting the value at index 1:
red, apple
yellow, sunflower
green, pear
After setting the value associated with the key "red":
red, tulip
yellow, sunflower
green, pear
*/
Imports System.Collections
Imports System.Collections.Specialized
Public Class MyCollection
Inherits NameObjectCollectionBase
' Gets or sets the value at the specified index.
Default Public Property Item(index As Integer) As [Object]
Get
Return Me.BaseGet(index)
End Get
Set
Me.BaseSet(index, value)
End Set
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
' Gets a String array that contains all the keys in the collection.
Public ReadOnly Property AllKeys() As [String]()
Get
Return Me.BaseGetAllKeys()
End Get
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:")
PrintKeysAndValues2(myCol)
Console.WriteLine()
' Sets the value at index 1.
myCol(1) = "sunflower"
Console.WriteLine("After setting the value at index 1:")
PrintKeysAndValues2(myCol)
Console.WriteLine()
' Sets the value associated with the key "red".
myCol("red") = "tulip"
Console.WriteLine("After setting the value associated with the key ""red"":")
PrintKeysAndValues2(myCol)
End Sub
Public Shared Sub PrintKeysAndValues2(myCol As MyCollection)
Dim s As [String]
For Each s In myCol.AllKeys
Console.WriteLine("{0}, {1}", s, myCol(s))
Next s
End Sub
End Class
'This code produces the following output.
'
'Initial state of the collection:
'red, apple
'yellow, banana
'green, pear
'
'After setting the value at index 1:
'red, apple
'yellow, sunflower
'green, pear
'
'After setting the value associated with the key "red":
'red, tulip
'yellow, sunflower
'green, pear
BaseSet(Int32, Object)
Legt den Wert des Eintrags am angegebenen Index der NameObjectCollectionBase Instanz fest.
protected:
void BaseSet(int index, System::Object ^ value);
protected void BaseSet(int index, object value);
member this.BaseSet : int * obj -> unit
Protected Sub BaseSet (index As Integer, value As Object)
Parameter
- index
- Int32
Der nullbasierte Index des festzulegenden Eintrags.
- value
- Object
Dies Object stellt den neuen Wert des festzulegenden Eintrags dar. Der Wert kann sein null.
Ausnahmen
Die Auflistung ist schreibgeschützt.
index liegt außerhalb des gültigen Bereichs der Indizes für die Auflistung.
Hinweise
Diese Methode ist ein O(1)-Vorgang.
Weitere Informationen
Gilt für:
BaseSet(String, Object)
Legt den Wert des ersten Eintrags mit dem angegebenen Schlüssel in der NameObjectCollectionBase Instanz fest, falls gefunden. Andernfalls wird der Instanz ein Eintrag mit dem angegebenen Schlüssel und Wert NameObjectCollectionBase hinzugefügt.
protected:
void BaseSet(System::String ^ name, System::Object ^ value);
protected void BaseSet(string name, object value);
member this.BaseSet : string * obj -> unit
Protected Sub BaseSet (name As String, value As Object)
Parameter
- value
- Object
Dies Object stellt den neuen Wert des festzulegenden Eintrags dar. Der Wert kann sein null.
Ausnahmen
Die Auflistung ist schreibgeschützt.
Hinweise
Wenn die Auflistung mehrere Einträge mit dem angegebenen Schlüssel enthält, legt diese Methode nur den ersten Eintrag fest. Um die Werte der nachfolgenden Einträge mit demselben Schlüssel festzulegen, verwenden Sie den Enumerator, um die Auflistung zu durchlaufen und die Schlüssel zu vergleichen.
Diese Methode ist ein O(1)-Vorgang.