Freigeben über


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 wurden. 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 Bereichselement, 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 Bereichselement, das als Link angezeigt wird und einer Methode zugeordnet ist.

Für jedes DesignerActionMethodItem und DesignerActionPropertyItemmuss der von DesignerActionList der Klasse abgeleiteten Vom Programmierer bereitgestellten Klasse 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 Bereichselementschnittstelle, die die Anzeige und Bearbeitung der entsprechenden Eigenschaftswerte ermöglicht. Weitere Informationen finden Sie in den Ausführungen zur DesignerActionPropertyItem-Klasse.

Die Reihenfolge der Elemente im zurückgegebenen Array spiegelt die Reihenfolge wider, 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 bedeutet den Beginn der ersten Gruppe. Diese Gruppe wird fortgesetzt, solange jedes folgende Element derselben Kategorie angehört. Wenn ein Element einer anderen, neuen Kategorie gefunden wird, wird eine neue Gruppe erstellt und das Element darin platziert.

  • Wenn ein Element einen anderen Typ als die aktuelle Gruppe aufweist, diese Kategorie aber bereits verwendet wurde, wird das Element in die übereinstimmende vorhandene Kategorie eingefügt.

  • Wenn ein Element über keine Kategorie verfügt, wird es in einer anderen Gruppe am Ende des Bereichs 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