Bagikan melalui


DesignerActionList.GetSortedActionItems Metode

Definisi

Mengembalikan kumpulan objek DesignerActionItem 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 objek DesignerActionItem.

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 diimplementasikan untuk kembali, dalam urutan tampilan yang diharapkan, kumpulan objek yang berasal dari kelas DesignerActionItem. 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. Dapat 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 kelas DesignerActionList. Setiap metode dan item properti ditampilkan sebagai entri aktif; berinteraksi dengannya melalui antarmuka pengguna (UI) 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 kelas DesignerActionPropertyItem.

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

  • Kategori item pertama yang ditemui menandakan dimulainya grup pertama. Grup tersebut berlanjut selama setiap item yang berhasil memiliki kategori yang sama. Saat item 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 properti AllowAssociate-nya diatur ke false.

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

Berlaku untuk

Lihat juga