ContextMenu.SourceControl Eigenschap
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Hiermee haalt u het besturingselement op dat het snelmenu weergeeft.
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
Waarde van eigenschap
Een Control die het besturingselement vertegenwoordigt dat het snelmenu weergeeft. Als er geen besturingselement is weergegeven in het snelmenu, wordt de eigenschap geretourneerd null.
- Kenmerken
Voorbeelden
In het volgende codevoorbeeld wordt een gebeurtenis-handler gemaakt voor de gebeurtenis van de PopupContextMenu. De code in de gebeurtenis-handler bepaalt welke van twee besturingselementen een PictureBox benoemde pictureBox1 en een TextBox benoemde is het besturingselement textBox1 dat het snelmenu weergeeft. Afhankelijk van het besturingselement waardoor het ContextMenu snelmenu wordt weergegeven, worden de juiste MenuItem objecten aan het ContextMenubesturingselement toegevoegd. Voor dit voorbeeld moet u een exemplaar van de klasse hebben met de ContextMenu naam contextMenu1, gedefinieerd in het formulier. In dit voorbeeld moet u ook een TextBox formulier hebben en PictureBox toevoegen en dat de ContextMenu eigenschap van deze besturingselementen is ingesteld op contextMenu1.
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
Opmerkingen
Met deze eigenschap kunt u bepalen welk besturingselement momenteel het snelmenu weergeeft dat is gedefinieerd in de ContextMenu. Als het snelmenu momenteel niet wordt weergegeven, kunt u deze eigenschap gebruiken om te bepalen welk besturingselement het laatst wordt weergegeven in het snelmenu. U kunt deze eigenschap in de Popup gebeurtenis gebruiken om ervoor te zorgen dat het besturingselement de juiste menu-items weergeeft. U kunt deze eigenschap ook gebruiken om een verwijzing naar het besturingselement door te geven aan een methode waarmee de taken worden uitgevoerd die zijn gekoppeld aan een menuopdracht die wordt weergegeven in het snelmenu. Aangezien de Form klasse wordt overgenomen van Control, kunt u deze eigenschap ook gebruiken als de ContextMenu eigenschap is gekoppeld aan een formulier.