DesignerActionList.GetSortedActionItems Méthode

Définition

Retourne la collection d'objets DesignerActionItem contenus dans la liste.

public:
 virtual System::ComponentModel::Design::DesignerActionItemCollection ^ GetSortedActionItems();
public virtual System.ComponentModel.Design.DesignerActionItemCollection GetSortedActionItems ();
abstract member GetSortedActionItems : unit -> System.ComponentModel.Design.DesignerActionItemCollection
override this.GetSortedActionItems : unit -> System.ComponentModel.Design.DesignerActionItemCollection
Public Overridable Function GetSortedActionItems () As DesignerActionItemCollection

Retours

DesignerActionItemCollection

Tableau DesignerActionItem qui contient les éléments de cette liste.

Exemples

L’exemple de code suivant montre comment créer une collection d’objets DesignerActionItem .

Pour obtenir une explication complète de cet exemple de code, consultez How to: Attach Smart Tags à un composant Windows Forms.

public override DesignerActionItemCollection GetSortedActionItems()
{
    DesignerActionItemCollection items = new DesignerActionItemCollection();

    //Define static section header entries.
    items.Add(new DesignerActionHeaderItem("Appearance"));
    items.Add(new DesignerActionHeaderItem("Information"));

    //Boolean property for locking color selections.
    items.Add(new DesignerActionPropertyItem("LockColors",
                     "Lock Colors", "Appearance",
                     "Locks the color properties."));
    if (!LockColors)
    {
        items.Add(new DesignerActionPropertyItem("BackColor",
                         "Back Color", "Appearance",
                         "Selects the background color."));
        items.Add(new DesignerActionPropertyItem("ForeColor",
                         "Fore Color", "Appearance",
                         "Selects the foreground color."));

        //This next method item is also added to the context menu 
        // (as a designer verb).
        items.Add(new DesignerActionMethodItem(this,
                         "InvertColors", "Invert Colors",
                         "Appearance",
                         "Inverts the fore and background colors.",
                          true));
    }
    items.Add(new DesignerActionPropertyItem("Text",
                     "Text String", "Appearance",
                     "Sets the display text."));

    //Create entries for static Information section.
    StringBuilder location = new StringBuilder("Location: ");
    location.Append(colLabel.Location);
    StringBuilder size = new StringBuilder("Size: ");
    size.Append(colLabel.Size);
    items.Add(new DesignerActionTextItem(location.ToString(),
                     "Information"));
    items.Add(new DesignerActionTextItem(size.ToString(),
                     "Information"));

    return items;
}
Public Overrides Function GetSortedActionItems() _
As DesignerActionItemCollection
    Dim items As New DesignerActionItemCollection()

    'Define static section header entries.
    items.Add(New DesignerActionHeaderItem("Appearance"))
    items.Add(New DesignerActionHeaderItem("Information"))

    'Boolean property for locking color selections.
    items.Add(New DesignerActionPropertyItem( _
    "LockColors", _
    "Lock Colors", _
    "Appearance", _
    "Locks the color properties."))

    If Not LockColors Then
        items.Add( _
        New DesignerActionPropertyItem( _
        "BackColor", _
        "Back Color", _
        "Appearance", _
        "Selects the background color."))

        items.Add( _
        New DesignerActionPropertyItem( _
        "ForeColor", _
        "Fore Color", _
        "Appearance", _
        "Selects the foreground color."))

        'This next method item is also added to the context menu 
        ' (as a designer verb).
        items.Add( _
        New DesignerActionMethodItem( _
        Me, _
        "InvertColors", _
        "Invert Colors", _
        "Appearance", _
        "Inverts the fore and background colors.", _
        True))
    End If
    items.Add( _
    New DesignerActionPropertyItem( _
    "Text", _
    "Text String", _
    "Appearance", _
    "Sets the display text."))

    'Create entries for static Information section.
    Dim location As New StringBuilder("Location: ")
    location.Append(colLabel.Location)
    Dim size As New StringBuilder("Size: ")
    size.Append(colLabel.Size)

    items.Add( _
    New DesignerActionTextItem( _
    location.ToString(), _
    "Information"))

    items.Add( _
    New DesignerActionTextItem( _
    size.ToString(), _
    "Information"))

    Return items
End Function

Remarques

La virtual GetSortedActionItems méthode est implémentée pour retourner, dans l’ordre d’affichage attendu, une collection d’objets dérivés de la DesignerActionItem classe. Ces éléments peuvent être des types spécifiques suivants.

Type Description
DesignerActionHeaderItem Étiquette de groupe, affichée en gras.
DesignerActionTextItem Étiquette, affichée dans une police simple.
DesignerActionPropertyItem Élément de panneau associé à une propriété. Peut également afficher une coche ou un éditeur de propriété associé à la propriété sous-jacente.
DesignerActionMethodItem Élément de panneau affiché sous la forme d’un lien hypertexte et associé à une méthode.

Pour chaque DesignerActionMethodItem et DesignerActionPropertyItem, une méthode ou une propriété correspondante doit être ajoutée à la classe fournie par le programmeur dérivée de la DesignerActionList classe. Chaque méthode et élément de propriété s’affiche en tant qu’entrée active ; interagir avec elle via l’interface utilisateur appelle respectivement la méthode ou la propriété correspondante.

Les éléments de propriété ont une interface spéciale d’élément de panneau qui permet l’affichage et la manipulation de leurs valeurs de propriété correspondantes. Pour plus d'informations, consultez la classe DesignerActionPropertyItem.

L’ordre des éléments du tableau retourné reflète l’ordre qu’ils apparaîtront dans le panneau. Les éléments sont regroupés en fonction de la propriété, à l’aide Category des règles suivantes :

  • La catégorie du premier élément rencontré signifie le début du premier groupe. Ce groupe continue tant que chaque élément réussi est de la même catégorie. Lorsqu’un élément d’une autre catégorie est rencontré, un nouveau groupe est créé et l’élément est placé dans celui-ci.

  • Si un élément a un type différent du groupe actuel, mais que cette catégorie a déjà été utilisée, l’élément est placé dans la catégorie existante correspondante.

  • Si un élément n’a pas de catégorie, il est placé dans un groupe divers à la fin du panneau. Ce groupe contient également des éléments dont la AllowAssociate propriété est définie falsesur .

La GetSortedActionItems méthode est appelée lorsque le panneau est créé pour la première fois. Vous devez appeler la Refresh méthode pour mettre à jour la liste des éléments affichés dans le panneau.

S’applique à

Voir aussi