ContextMenuStrip.SourceControl 属性    
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
获取上一个使此 ContextMenuStrip 被显示的控件。
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
	属性值
使此 ContextMenuStrip 被显示的控件。
- 属性
 
示例
下面的代码示例演示了对事件的重用和处理的Opening动态SourceControl确定。 此示例是为 类提供的更大示例的 ContextMenuStrip 一部分。
// 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
	注解
属性的 SourceControl 常见用途包括:
在事件期间 Opening 添加、删除、启用或禁用菜单项。
基于上次显示 ContextMenuStrip的 控件,决定修改所选命令。