ShapeCollection, classe

Mise à jour : novembre 2007

Représente une collection d'objets Shape.

Espace de noms :  Microsoft.VisualBasic.PowerPacks
Assembly :  Microsoft.VisualBasic.PowerPacks.Vs (dans Microsoft.VisualBasic.PowerPacks.Vs.dll)

Syntaxe

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

Notes

Les méthodes Add, Remove et RemoveAt vous permettent d'ajouter et de supprimer des formes individuelles de la collection. Vous pouvez également utiliser la méthode AddRange ou Clear pour ajouter ou supprimer toutes les formes de la collection.

Vous pouvez déterminer si Shape est membre de la collection en passant la forme dans la méthode Contains. Pour obtenir la valeur d'index de l'emplacement de la forme dans la collection, passez la forme dans la méthode IndexOf. Vous pouvez copier la collection dans un tableau en appelant la méthode CopyTo.

Exemples

L'exemple de code suivant supprime Shape du ShapeCollection d'un formulaire s'il est membre de la collection. L'exemple suppose que vous disposez de contrôles LineShape, OvalShape et RectangleShape sur un formulaire. Lorsque vous cliquez sur une forme, celle-ci est supprimée du ShapeCollection, sauf s'il s'agit de la dernière forme de la collection.

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);
        }
    }
}

Hiérarchie d'héritage

System.Object
  Microsoft.VisualBasic.PowerPacks.ShapeCollection

Sécurité des threads

Tous les membres static (Shared en Visual Basic) publics de ce type sont thread-safe. Il n'est pas garanti que les membres d'instance soient thread-safe.

Voir aussi

Référence

Membres ShapeCollection

Microsoft.VisualBasic.PowerPacks, espace de noms

Autres ressources

Introduction aux contrôles Line et Shape (Visual Studio)

Comment : dessiner des lignes avec le contrôle LineShape (Visual Studio)

Comment : dessiner des formes avec les contrôles OvalShape et RectangleShape (Visual Studio)