DesignerActionList.GetSortedActionItems Methode

Definition

Ruft die Auflistung der in der Liste enthaltenen DesignerActionItem-Objekte ab.

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

Gibt zurück

Ein DesignerActionItem-Array mit den in dieser Liste enthaltenen Elementen.

Beispiele

Im folgenden Codebeispiel wird veranschaulicht, wie Eine Auflistung von DesignerActionItem -Objekten erstellt wird.

Eine vollständige Erläuterung dieses Codebeispiels finden Sie unter Vorgehensweise: Anfügen von Smarttags an eine Windows Forms Komponente.

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

Hinweise

Die virtualGetSortedActionItems -Methode wird implementiert, um in der erwarteten Anzeigereihenfolge eine Sammlung von Objekten zurückzugeben, die von der DesignerActionItem -Klasse abgeleitet sind. Diese Elemente können die folgenden spezifischen Typen aufweisen.

type BESCHREIBUNG
DesignerActionHeaderItem Die Gruppenbezeichnung, fett dargestellt.
DesignerActionTextItem Eine Bezeichnung, die in einer einfachen Schriftart angezeigt wird.
DesignerActionPropertyItem Ein Panelelement, das einer Eigenschaft zugeordnet ist. Möglicherweise wird auch ein Häkchen oder ein Eigenschaften-Editor angezeigt, der der zugrunde liegenden Eigenschaft zugeordnet ist.
DesignerActionMethodItem Ein Panelelement, das als Link angezeigt wird und einer -Methode zugeordnet ist.

Für jedes DesignerActionMethodItem und DesignerActionPropertyItemmuss der von DesignerActionList der Klasse abgeleiteten Programmiererklasse eine entsprechende Methode oder Eigenschaft hinzugefügt werden. Jedes Element Methoden- und wird als aktive Eintrag angezeigt. über die Benutzeroberfläche interagieren aufruft (UI) die entsprechende Methode oder Eigenschaft bzw.

Eigenschaftenelemente verfügen über eine spezielle Panel-Element-Schnittstelle, die die Anzeige und Bearbeitung ihrer entsprechenden Eigenschaftswerte ermöglicht. Weitere Informationen finden Sie in den Ausführungen zur DesignerActionPropertyItem-Klasse.

Die Reihenfolge der Elemente im zurückgegebenen Array gibt die Reihenfolge an, in der sie im Bereich angezeigt werden. Die Elemente werden nach der Category -Eigenschaft gruppiert, wobei die folgenden Regeln verwendet werden:

  • Die Kategorie des ersten gefundenen Elements steht für den Anfang der ersten Gruppe. Diese Gruppe wird fortgesetzt, solange jedes erfolgreiche Element derselben Kategorie angehört. Wenn ein Element einer anderen, neuen Kategorie gefunden wird, wird eine neue Gruppe erstellt, und das Element wird darin platziert.

  • Wenn ein Element einen anderen Typ als die aktuelle Gruppe hat, diese Kategorie aber bereits verwendet wurde, wird das Element in der übereinstimmenden vorhandenen Kategorie platziert.

  • Wenn ein Element über keine Kategorie verfügt, wird es am Ende des Bereichs in einer Gruppe "Verschiedenes" platziert. Diese Gruppe enthält auch Elemente, deren AllowAssociate Eigenschaft auf falsefestgelegt ist.

Die GetSortedActionItems -Methode wird aufgerufen, wenn der Bereich zum ersten Mal erstellt wird. Sie müssen die Refresh -Methode aufrufen, um die Liste der im Bereich angezeigten Elemente zu aktualisieren.

Gilt für:

Weitere Informationen