PointKeyFrameCollection.GetEnumerator PointKeyFrameCollection.GetEnumerator PointKeyFrameCollection.GetEnumerator PointKeyFrameCollection.GetEnumerator Method

Definition

Gibt einen Enumerator zurück, der die Auflistung durchlaufen kann.Returns an enumerator that can iterate through the collection.

public:
 virtual System::Collections::IEnumerator ^ GetEnumerator();
public System.Collections.IEnumerator GetEnumerator ();
abstract member GetEnumerator : unit -> System.Collections.IEnumerator
override this.GetEnumerator : unit -> System.Collections.IEnumerator
Public Function GetEnumerator () As IEnumerator

Gibt zurück

Ein IEnumerator, der die Auflistung durchlaufen kann.An IEnumerator that can iterate through the collection.

Implementiert

Hinweise

Mit Enumeratoren können nur das Lesen der Daten in der Auflistung.Enumerators only allow reading the data in the collection. Enumeratoren können nicht zum Ändern der zugrunde liegenden Auflistung verwendet werden.Enumerators cannot be used to modify the underlying collection.

Zunächst wird der Enumerator vor dem ersten Element in der Auflistung.Initially, the enumerator is positioned before the first item in the collection. Reset setzt den Enumerator ebenfalls auf diese Position zurück.Reset also brings the enumerator back to this position. An dieser position Aufrufen Current löst eine Ausnahme aus.At this position, calling Current throws an exception. Aus diesem Grund müssen Sie aufrufen MoveNext auf den Enumerator auf das erste Element der Auflistung vor dem Lesen des Werts von Current.Therefore, you must call MoveNext to advance the enumerator to the first item of the collection before reading the value of Current.

Current gibt solange dasselbe Objekt zurück, bis MoveNext oder Reset aufgerufen wird.Current returns the same object until either MoveNext or Reset is called. MoveNext Legt Current zum nächsten Element.MoveNext sets Current to the next item.

Nach das Ende der Auflistung übergeben wird, wird der Enumerator hinter das letzte Element in der Auflistung, und ein Aufruf MoveNext gibt false.After the end of the collection is passed, the enumerator is positioned after the last item in the collection, and calling MoveNext returns false. Wenn der letzte Aufruf MoveNext zurückgegebenen false, wird beim Aufruf Current löst eine Ausnahme aus.If the last call to MoveNext returned false, calling Current throws an exception. Festzulegende Current auf das erste Element der Auflistung erneut aus, rufen Sie Reset gefolgt von MoveNext.To set Current to the first item of the collection again, you can call Reset followed by MoveNext.

Ein Enumerator bleibt gültig, solange die Auflistung unverändert ist.An enumerator remains valid as long as the collection remains unchanged. Wenn der Auflistung Änderungen vorgenommen werden, z. B. das Hinzufügen, ändern oder Löschen von Elementen der Enumerator unwiederbringlich seine Gültigkeit und der nächste Aufruf von MoveNext oder Reset löst eine InvalidOperationException.If changes are made to the collection, such as adding, modifying or deleting items, the enumerator is irrecoverably invalidated and the next call to MoveNext or Reset throws an InvalidOperationException. Wenn die Auflistung, zwischen geändert wird MoveNext und Current, Current gibt das Element zurück, die es auf festgelegt ist, auch wenn der Enumerator bereits ungültig ist.If the collection is modified between MoveNext and Current, Current will return the item that it is set to, even if the enumerator is already invalidated.

Der Enumerator hat keinen exklusiven Zugriff auf die Auflistung; daher ist die Enumeration einer Auflistung systembedingt kein threadsicheres Verfahren.The enumerator does not have exclusive access to the collection; therefore, enumerating through a collection is intrinsically not a thread-safe procedure. Auch wenn eine Auflistung synchronisiert ist, können andere Threads weiterhin die Auflistung ändern, die wodurch den Enumerator eine Ausnahme ausgelöst.Even when a collection is synchronized, other threads could still modify the collection, which causes the enumerator to throw an exception. Um während der Enumeration Threadsicherheit zu gewährleisten, können Sie entweder die Auflistung während der gesamten Enumeration sperren oder die Ausnahmen, die aus von anderen Threads stammenden Änderungen resultieren, abfangen.To guarantee thread safety during enumeration, you can either lock the collection during the entire enumeration or catch the exceptions resulting from changes made by other threads.

Gilt für: