ContextMenu.SourceControl Vlastnost
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Získá ovládací prvek, který zobrazuje místní nabídku.
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)>]
member this.SourceControl : System.Windows.Forms.Control
Public ReadOnly Property SourceControl As Control
Hodnota vlastnosti
A Control , který představuje ovládací prvek, který zobrazuje místní nabídku. Pokud místní nabídku nezobradí žádný ovládací prvek, vrátí null
vlastnost .
- Atributy
Příklady
Následující příklad kódu vytvoří obslužnou rutinu Popup události pro událost ContextMenu. Kód v obslužné rutině události určuje, který ze dvou ovládacích prvků je pojmenovaný PictureBoxpictureBox1
a pojmenovaný TextBoxtextBox1
je ovládací prvek zobrazující místní nabídku. V závislosti na tom, který ovládací prvek způsobil ContextMenu zobrazení místní nabídky, přidá ovládací prvek příslušné MenuItem objekty do ContextMenu. Tento příklad vyžaduje, abyste měli ve formuláři definovanou instanci ContextMenu třídy s názvem contextMenu1
. Tento příklad také vyžaduje, abyste do TextBox formuláře přidali a PictureBox a aby ContextMenu vlastnost těchto ovládacích prvků byla nastavena na contextMenu1
hodnotu .
private:
void MyPopupEventHandler( System::Object^ /*sender*/, System::EventArgs^ /*e*/ )
{
// Define the MenuItem objects to display for the TextBox.
MenuItem^ menuItem1 = gcnew MenuItem( "&Copy" );
MenuItem^ menuItem2 = gcnew MenuItem( "&Find and Replace" );
// Define the MenuItem object to display for the PictureBox.
MenuItem^ menuItem3 = gcnew MenuItem( "C&hange Picture" );
// Clear all previously added MenuItems.
contextMenu1->MenuItems->Clear();
if ( contextMenu1->SourceControl == textBox1 )
{
// Add MenuItems to display for the TextBox.
contextMenu1->MenuItems->Add( menuItem1 );
contextMenu1->MenuItems->Add( menuItem2 );
}
else if ( contextMenu1->SourceControl == pictureBox1 )
{
// Add the MenuItem to display for the PictureBox.
contextMenu1->MenuItems->Add( menuItem3 );
}
}
private void MyPopupEventHandler(System.Object sender, System.EventArgs e)
{
// Define the MenuItem objects to display for the TextBox.
MenuItem menuItem1 = new MenuItem("&Copy");
MenuItem menuItem2 = new MenuItem("&Find and Replace");
// Define the MenuItem object to display for the PictureBox.
MenuItem menuItem3 = new MenuItem("C&hange Picture");
// Clear all previously added MenuItems.
contextMenu1.MenuItems.Clear();
if(contextMenu1.SourceControl == textBox1)
{
// Add MenuItems to display for the TextBox.
contextMenu1.MenuItems.Add(menuItem1);
contextMenu1.MenuItems.Add(menuItem2);
}
else if(contextMenu1.SourceControl == pictureBox1)
{
// Add the MenuItem to display for the PictureBox.
contextMenu1.MenuItems.Add(menuItem3);
}
}
Private Sub MyPopupEventHandler(sender As System.Object, e As System.EventArgs)
' Define the MenuItem objects to display for the TextBox.
Dim menuItem1 As New MenuItem("&Copy")
Dim menuItem2 As New MenuItem("&Find and Replace")
' Define the MenuItem object to display for the PictureBox.
Dim menuItem3 As New MenuItem("C&hange Picture")
' Clear all previously added MenuItems.
contextMenu1.MenuItems.Clear()
If contextMenu1.SourceControl Is textBox1 Then
' Add MenuItems to display for the TextBox.
contextMenu1.MenuItems.Add(menuItem1)
contextMenu1.MenuItems.Add(menuItem2)
ElseIf contextMenu1.SourceControl Is pictureBox1 Then
' Add the MenuItem to display for the PictureBox.
contextMenu1.MenuItems.Add(menuItem3)
End If
End Sub
Poznámky
Tato vlastnost umožňuje určit, který ovládací prvek aktuálně zobrazuje místní nabídku definovanou v objektu ContextMenu. Pokud se místní nabídka aktuálně nezobrazuje, můžete pomocí této vlastnosti určit, který ovládací prvek naposledy zobrazil místní nabídku. Tuto vlastnost můžete použít v Popup události, abyste zajistili, že ovládací prvek zobrazí správné položky nabídky. Tuto vlastnost můžete použít také k předání odkazu na ovládací prvek metodě, která provádí úlohy spojené s příkazem nabídky zobrazeným v místní nabídce. Vzhledem k tomu, že Form třída dědí z Control, můžete tuto vlastnost použít také v případě, že ContextMenu je přidružena k formuláři.