DesignerActionList.GetSortedActionItems Metode

Definisi

Mengembalikan kumpulan DesignerActionItem objek yang terkandung dalam daftar.

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

Mengembalikan

Array DesignerActionItem yang berisi item dalam daftar ini.

Contoh

Contoh kode berikut menunjukkan cara membuat kumpulan DesignerActionItem objek.

Untuk penjelasan lengkap tentang contoh kode ini, lihat Cara: Melampirkan Tag Pintar ke Komponen Formulir Windows.

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

Keterangan

Metode virtualGetSortedActionItems ini diimplementasikan untuk mengembalikan, dalam urutan tampilan yang diharapkan, kumpulan objek yang berasal dari DesignerActionItem kelas . Item ini bisa dari jenis tertentu berikut.

Jenis Deskripsi
DesignerActionHeaderItem Label grup, ditampilkan dalam huruf tebal.
DesignerActionTextItem Label, ditampilkan dalam font biasa.
DesignerActionPropertyItem Item panel yang terkait dengan properti. Mungkin juga menampilkan tanda centang atau editor properti yang terkait dengan properti yang mendasar.
DesignerActionMethodItem Item panel ditampilkan sebagai hyperlink dan terkait dengan metode .

Untuk setiap DesignerActionMethodItem dan DesignerActionPropertyItem, metode atau properti yang sesuai harus ditambahkan ke kelas yang disediakan programmer yang berasal dari DesignerActionList kelas . Setiap metode dan item properti ditampilkan sebagai entri aktif; berinteraksi dengannya melalui antarmuka pengguna (UI) masing-masing memanggil metode atau properti yang sesuai.

Item properti memiliki antarmuka panel-item khusus yang memungkinkan tampilan dan manipulasi nilai properti yang sesuai. Untuk informasi selengkapnya, lihat DesignerActionPropertyItem kelas.

Urutan item dalam array yang dikembalikan mencerminkan urutan yang akan muncul di panel. Item dikelompokkan sesuai dengan Category properti , menggunakan aturan berikut:

  • Kategori item pertama yang ditemui menandakan dimulainya grup pertama. Grup tersebut berlanjut selama setiap item yang berhasil adalah kategori yang sama. Saat item dari kategori yang berbeda, kategori baru ditemui, grup baru dibuat dan item ditempatkan di dalamnya.

  • Jika item memiliki tipe yang berbeda dari grup saat ini, tetapi kategori tersebut telah digunakan, item ditempatkan dalam kategori yang cocok dengan yang ada.

  • Jika item tidak memiliki kategori, item ditempatkan dalam grup lain-lain di akhir panel. Grup ini juga berisi item yang propertinya AllowAssociate diatur ke false.

Metode GetSortedActionItems ini dipanggil ketika panel pertama kali dibuat. Anda harus memanggil Refresh metode untuk memperbarui daftar item yang ditampilkan di panel.

Berlaku untuk

Lihat juga