Bagikan melalui


ContextMenuStrip.SourceControl Properti

Definisi

Mendapatkan kontrol terakhir yang menyebabkan ini ContextMenuStrip ditampilkan.

public:
 property System::Windows::Forms::Control ^ SourceControl { System::Windows::Forms::Control ^ get(); };
[System.ComponentModel.Browsable(false)]
public System.Windows.Forms.Control SourceControl { get; }
[System.ComponentModel.Browsable(false)]
public System.Windows.Forms.Control? SourceControl { get; }
[<System.ComponentModel.Browsable(false)>]
member this.SourceControl : System.Windows.Forms.Control
Public ReadOnly Property SourceControl As Control

Nilai Properti

Kontrol yang menyebabkan ini ContextMenuStrip ditampilkan.

Atribut

Contoh

Contoh kode berikut menunjukkan penentuan dinamis SourceControl dengan penggunaan kembali, dan penanganan Opening peristiwa. Contoh ini adalah bagian dari contoh yang lebih besar yang disediakan untuk ContextMenuStrip kelas .

// This event handler is invoked when the ContextMenuStrip
// control's Opening event is raised. It demonstrates
// dynamic item addition and dynamic SourceControl 
// determination with reuse.
void cms_Opening(object sender, System.ComponentModel.CancelEventArgs e)
{
    // Acquire references to the owning control and item.
    Control c = fruitContextMenuStrip.SourceControl as Control;
    ToolStripDropDownItem tsi = fruitContextMenuStrip.OwnerItem as ToolStripDropDownItem;

    // Clear the ContextMenuStrip control's Items collection.
    fruitContextMenuStrip.Items.Clear();

    // Check the source control first.
    if (c != null)
    {
        // Add custom item (Form)
        fruitContextMenuStrip.Items.Add("Source: " + c.GetType().ToString());
    }
    else if (tsi != null)
    {
        // Add custom item (ToolStripDropDownButton or ToolStripMenuItem)
        fruitContextMenuStrip.Items.Add("Source: " + tsi.GetType().ToString());
    }

    // Populate the ContextMenuStrip control with its default items.
    fruitContextMenuStrip.Items.Add("-");
    fruitContextMenuStrip.Items.Add("Apples");
    fruitContextMenuStrip.Items.Add("Oranges");
    fruitContextMenuStrip.Items.Add("Pears");

    // Set Cancel to false. 
    // It is optimized to true based on empty entry.
    e.Cancel = false;
}
' This event handler is invoked when the ContextMenuStrip
' control's Opening event is raised. It demonstrates
' dynamic item addition and dynamic SourceControl 
' determination with reuse.
 Sub cms_Opening(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs)

     ' Acquire references to the owning control and item.
     Dim c As Control = fruitContextMenuStrip.SourceControl
     Dim tsi As ToolStripDropDownItem = fruitContextMenuStrip.OwnerItem 

     ' Clear the ContextMenuStrip control's 
     ' Items collection.
     fruitContextMenuStrip.Items.Clear()

     ' Check the source control first.
     If (c IsNot Nothing) Then
         ' Add custom item (Form)
         fruitContextMenuStrip.Items.Add(("Source: " + c.GetType().ToString()))
     ElseIf (tsi IsNot Nothing) Then
         ' Add custom item (ToolStripDropDownButton or ToolStripMenuItem)
         fruitContextMenuStrip.Items.Add(("Source: " + tsi.GetType().ToString()))
     End If

     ' Populate the ContextMenuStrip control with its default items.
     fruitContextMenuStrip.Items.Add("-")
     fruitContextMenuStrip.Items.Add("Apples")
     fruitContextMenuStrip.Items.Add("Oranges")
     fruitContextMenuStrip.Items.Add("Pears")

     ' Set Cancel to false. 
     ' It is optimized to true based on empty entry.
     e.Cancel = False
 End Sub

Keterangan

SourceControl Penggunaan umum properti meliputi yang berikut ini:

  • Menambahkan, menghapus, mengaktifkan, atau menonaktifkan item menu selama Opening acara.

  • Memutuskan modifikasi perintah yang dipilih berdasarkan kontrol yang terakhir menampilkan ContextMenuStrip.

Berlaku untuk