Freigeben über


CustomStrokes.CustomStrokesEnumerator.Current-Eigenschaft

Ruft die Strokes-Auflistung in der CustomStrokes-Auflistung ab, auf die der Enumerator zeigt.

Namespace:  Microsoft.Ink
Assembly:  Microsoft.Ink (in Microsoft.Ink.dll)

Syntax

'Declaration
Public ReadOnly Property Current As Strokes
'Usage
Dim instance As CustomStrokes..::.CustomStrokesEnumerator
Dim value As Strokes

value = instance.Current
public Strokes Current { get; }
public:
property Strokes^ Current {
    Strokes^ get ();
}
/** @property */
public Strokes get_Current()
public function get Current () : Strokes

Eigenschaftenwert

Typ: Microsoft.Ink.Strokes
Die Strokes-Auflistung in der CustomStrokes-Auflistung, auf die der Enumerator zeigt.

Hinweise

Nach dem Erstellen eines CustomStrokes.CustomStrokesEnumerator-Enumerators oder nach dem Aufrufen der Reset-Methode muss die MoveNext-Methode aufgerufen werden, um den Enumerator vor dem Lesen des Werts der Current-Eigenschaft auf das erste Element der Auflistung festzulegen. Andernfalls ist die Current-Eigenschaft nicht definiert.

Die Current-Eigenschaft löst eine Ausnahme aus, wenn der letzte Aufruf der MoveNext-Methode false zurückgibt. Wenn der letzte Aufruf der MoveNext-Methode den Wert false zurückgibt, hat der Enumerator das Ende der CustomStrokes-Auflistung erreicht.

Die Current-Eigenschaft verschiebt nicht die Position des Enumerators. Nachfolgende Aufrufe der Current-Eigenschaft geben dasselbe Objekt zurück, bis entweder die MoveNext-Methode oder die Reset-Methode aufgerufen wird.

Ein Enumerator bleibt so lange gültig, bis die Auflistung geändert wird. Wenn an der Auflistung Änderungen vorgenommen werden, z. B. durch Hinzufügen, Ändern oder Löschen von Elementen, wird der Enumerator unwiderruflich ungültig. Der nächste Aufruf der MoveNext-Methode oder der Reset-Methode löst eine System.InvalidOperationException-Ausnahme aus. Wenn die Auflistung zwischen dem Aufruf der MoveNext-Methode und dem Aufruf der Current-Eigenschaft geändert wird, gibt die Current-Eigenschaft das Element zurück, auf das sie festgelegt wurde, auch wenn der Enumerator bereits ungültig ist.

Beispiele

In diesen Beispielen werden zwei Verfahren zum Enumerieren der CustomStrokes-Auflistung veranschaulicht, um jedes Strokes-Objekt in der Auflistung abzurufen.

In diesem Beispiel wird der IEnumerator für die CustomStrokes-Auflistung abgerufen und zum Durchlaufen der Auflistung verwendet. Jedes Strokes-Objekt wird dann um den Faktor 2 skaliert.

Private Sub EnumerateCustomStrokesWithEnumerator(ByVal mInk As Ink)
    Dim mCustomStrokesEnumerator As IEnumerator = mInk.CustomStrokes.GetEnumerator()
    mCustomStrokesEnumerator.Reset()
    While (mCustomStrokesEnumerator.MoveNext())
        Dim S As Strokes = DirectCast(mCustomStrokesEnumerator.Current, Strokes)
        S.Scale(2, 2)
    End While
End Sub
private void EnumerateCustomStrokesWithEnumerator(Ink mInk)
{
    IEnumerator mCustomStrokesEnumerator = mInk.CustomStrokes.GetEnumerator();
    mCustomStrokesEnumerator.Reset();
    while (mCustomStrokesEnumerator.MoveNext())
    {
        Strokes S = (Strokes)mCustomStrokesEnumerator.Current;
        S.Scale(2, 2);
    }
}

In diesem Beispiel wird die foreach-Anweisung verwendet, mit der die GetEnumerator-Methode im internen Code aufgerufen wird, den der Compiler zum Unterstützen der Anweisung generiert.

Private Sub EnumerateCustomStrokesWithForEach(ByVal mInk As Ink)
    For Each S As Strokes In mInk.CustomStrokes
        S.Scale(2, 2)
    Next
End Sub
private void EnumerateCustomStrokesWithForEach(Ink mInk)
{
    foreach (Strokes S in mInk.CustomStrokes)
    {
        S.Scale(2, 2);
    }

}

Plattformen

Windows Vista

.NET Framework und .NET Compact Framework unterstützen nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.

Versionsinformationen

.NET Framework

Unterstützt in: 3.0

Siehe auch

Referenz

CustomStrokes.CustomStrokesEnumerator-Klasse

CustomStrokes.CustomStrokesEnumerator-Member

Microsoft.Ink-Namespace

CustomStrokes

Strokes

CustomStrokes.CustomStrokesEnumerator.MoveNext

CustomStrokes.CustomStrokesEnumerator.Reset

Weitere Ressourcen

System.Collections.IEnumerator