Share via


ShapeCollection-Klasse

Aktualisiert: November 2007

Stellt eine Auflistung von Shape-Objekten dar.

Namespace:  Microsoft.VisualBasic.PowerPacks
Assembly:  Microsoft.VisualBasic.PowerPacks.Vs (in Microsoft.VisualBasic.PowerPacks.Vs.dll)

Syntax

Public NotInheritable Class ShapeCollection _
    Implements IList, IDisposable

Dim instance As ShapeCollection
public sealed class ShapeCollection : IList, 
    IDisposable
public ref class ShapeCollection sealed : IList, 
    IDisposable
public final class ShapeCollection implements IList, IDisposable

Hinweise

Mit den Methoden Add, Remove und RemoveAt können Sie einzelne Formen aus der Auflistung entfernen oder zu dieser hinzufügen. Darüber hinaus können Sie mit der Methode AddRange oder Clear alle Formen zur Auflistung hinzufügen oder daraus entfernen.

Sie können bestimmen, ob ein Shape-Steuerelement ein Member der Auflistung ist, indem Sie die Form an die Contains-Methode übergeben. Übergeben Sie die Form an die IndexOf-Methode, um den Indexwert für die Position einer Form in der Auflistung abzurufen. Die Auflistung kann durch Aufrufen der CopyTo-Methode in ein Array kopiert werden.

Beispiele

Im folgenden Codebeispiel wird ein Shape-Steuerelement aus der ShapeCollection eines Formulars entfernt, wenn es ein Member der Auflistung ist. Für dieses Beispiel muss jeweils ein Steuerelement des Typs LineShape, OvalShape und RectangleShape in einem Formular enthalten sein. Wenn Sie auf eine Form klicken, wird diese aus der ShapeCollection entfernt, wenn es sich nicht um die letzte Form in der Auflistung handelt.

Private Sub Shapes_Click(ByVal sender As System.Object, _
 ByVal e As System.EventArgs) Handles RectangleShape1.Click, _
 OvalShape1.Click, LineShape1.Click
    ' Determine whether the shape is in the collection.
    If ShapeContainer1.Shapes.Contains(sender) Then
        ' If the Index is greater than 0, remove the shape.
        If ShapeContainer1.Shapes.IndexOf(sender) > 0 Then
            ShapeContainer1.Shapes.Remove(sender)
        End If
    End If
End Sub
private void Shapes_Click(System.Object sender, System.EventArgs e)
{
    // Determine whether the shape is in the collection.
    if (shapeContainer1.Shapes.Contains((Shape)sender))
    // If the Index is greater than 0, remove the shape.
    {
        if (shapeContainer1.Shapes.IndexOf((Shape)sender) > 0)
        {
            shapeContainer1.Shapes.Remove((Shape)sender);
        }
    }
}

Vererbungshierarchie

System.Object
  Microsoft.VisualBasic.PowerPacks.ShapeCollection

Threadsicherheit

Alle öffentlichen static (Shared in Visual Basic)-Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht gewährleistet.

Siehe auch

Referenz

ShapeCollection-Member

Microsoft.VisualBasic.PowerPacks-Namespace

Weitere Ressourcen

Einführung in das Line-Steuerelement und das Shape-Steuerelement (Visual Studio)

Gewusst wie: Zeichnen von Linien mit dem LineShape-Steuerelement (Visual Studio)

Gewusst wie: Zeichnen von Formen mit dem OvalShape-Steuerelement und dem RectangleShape-Steuerelement (Visual Studio)