ContextMenuStrip.SourceControl ContextMenuStrip.SourceControl ContextMenuStrip.SourceControl ContextMenuStrip.SourceControl Property

定義

この ContextMenuStrip を表示した最後のコントロールを取得します。Gets the last control that caused this ContextMenuStrip to be displayed.

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

プロパティ値

この ContextMenuStrip を表示したコントロール。The control that caused this ContextMenuStrip to be displayed.

次のコード例は、 SourceControl再利用とOpeningイベントの処理による動的な決定を示しています。The following code example demonstrates dynamic SourceControl determination with reuse, and handling of the Opening event. この例は、 ContextMenuStripクラスに対して提供される大規模な例の一部です。This example is part of a larger example provided for the ContextMenuStrip class.

// 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プロパティの一般的な用途は次のとおりです。Common uses of the SourceControl property include the following:

  • Openingイベント中のメニュー項目の追加、削除、有効化、または無効化。Adding, removing, enabling, or disabling a menu item during the Opening event.

  • 最後にを表示したコントロールに基づいて、 ContextMenuStrip選択したコマンドの変更を決定します。Deciding on modifications of a chosen command based on the control that last displayed the ContextMenuStrip.

セキュリティ

UIPermission
すべてのウィンドウでこのプロパティ値を設定します。for all windows to set this property value. 関連付けられた列挙型:AllWindowsAssociated enumeration: AllWindows

適用対象