Nyelv

DesignerActionList.GetSortedActionItems Metódus

Definíció

A listában szereplő objektumok gyűjteményét DesignerActionItem adja vissza.

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

Válaszok

A DesignerActionItem lista elemeit tartalmazó tömb.

Példák

Az alábbi példakód bemutatja, hogyan hozhat létre objektumgyűjteményt DesignerActionItem .

A példakód teljes magyarázatát a A következőhöz: Intelligens címkék csatolása Windows Forms összetevőhöz.

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

Megjegyzések

A virtualGetSortedActionItems metódus a várt megjelenítési sorrendben az osztályból DesignerActionItem származó objektumok gyűjteményének visszaadására lesz implementálva. Ezek az elemek a következő típusúak lehetnek.

Típus Leírás
DesignerActionHeaderItem A csoport címkéje félkövér színben jelenik meg.
DesignerActionTextItem Egyszerű betűtípussal megjelenített címke.
DesignerActionPropertyItem Egy tulajdonsághoz társított panelelem. A mögöttes tulajdonsághoz tartozó pipa vagy tulajdonságszerkesztő is megjeleníthető.
DesignerActionMethodItem Egy panelelem hivatkozásként jelenik meg, és egy metódushoz van társítva.

Minden DesignerActionMethodItemDesignerActionPropertyItemesetben hozzá kell adni egy megfelelő metódust vagy tulajdonságot az osztályból DesignerActionList származó programozó által megadott osztályhoz. Minden metódus és tulajdonságelem aktív bejegyzésként jelenik meg; ha a felhasználói felületen (UI) keresztül kommunikál vele, a megfelelő metódust vagy tulajdonságot hívja meg.

A tulajdonságelemek speciális panelelem-felülettel rendelkeznek, amely lehetővé teszi a megfelelő tulajdonságértékek megjelenítését és kezelését. További információért lásd a DesignerActionPropertyItem osztályt.

A visszaadott tömb elemeinek sorrendje a panelen megjelenő sorrendet tükrözi. Az elemek a Category tulajdonság szerint vannak csoportosítva az alábbi szabályok szerint:

  • Az első elem kategóriája az első csoport kezdetét jelzi. Ez a csoport addig folytatódik, amíg minden sikeres elem ugyanabba a kategóriába tartozik. Ha egy másik, új kategóriát tartalmazó elemet észlel, létrejön egy új csoport, és az elem belekerül.

  • Ha egy elem típusa eltér az aktuális csoporttól, de a kategória már használatban van, az elem a meglévő kategória megfelelő kategóriájába kerül.

  • Ha egy elem nem rendelkezik kategóriával, a panel végén egy vegyes csoportba kerül. Ez a csoport olyan elemeket is tartalmaz, amelyeknek AllowAssociate a tulajdonsága a következőre falsevan állítva.

A GetSortedActionItems metódus a panel első létrehozásakor lesz meghívva. A panelen megjelenő elemek listájának frissítéséhez meg kell hívnia Refresh a metódust.

A következőre érvényes:

Lásd még