ContextMenu.SourceControl Własność
Definicja
Ważny
Niektóre informacje dotyczą produktów przedpremierowych, które mogą zostać znacznie zmodyfikowane przed premierą. Microsoft nie udziela żadnych gwarancji, ani wyraźnych, ani domniemanych, dotyczących informacji podanych tutaj.
Pobiera kontrolkę, która wyświetla menu skrótów.
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
Wartość nieruchomości
Element Control reprezentujący kontrolkę, która wyświetla menu skrótów. Jeśli żadna kontrolka nie wyświetli menu skrótów, właściwość zwraca nullwartość .
- Atrybuty
Przykłady
Poniższy przykład kodu tworzy procedurę obsługi zdarzeń dla Popup zdarzenia ContextMenu. Kod w procedurze obsługi zdarzeń określa, które z dwóch kontrolek ma PictureBox nazwę, a TextBox nazwa pictureBox1textBox1 jest kontrolką wyświetlającą menu skrótów. W zależności od tego, która kontrolka spowodowała ContextMenu wyświetlenie menu skrótów, kontrolka dodaje odpowiednie MenuItem obiekty do obiektu ContextMenu. W tym przykładzie wymagane jest wystąpienie ContextMenu klasy o nazwie , zdefiniowane contextMenu1w formularzu. Ten przykład wymaga również dodania TextBox elementu i PictureBox do formularza oraz ustawienia ContextMenu właściwości tych kontrolek na contextMenu1wartość .
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
Uwagi
Ta właściwość umożliwia określenie, która kontrolka aktualnie wyświetla menu skrótów zdefiniowane w elemecie ContextMenu. Jeśli menu skrótów nie jest obecnie wyświetlane, możesz użyć tej właściwości, aby określić, która kontrolka ostatnio wyświetli menu skrótów. Możesz użyć tej właściwości w zdarzeniu Popup , aby upewnić się, że kontrolka wyświetla odpowiednie elementy menu. Za pomocą tej właściwości można również przekazać odwołanie do kontrolki do metody wykonującej zadania skojarzone z poleceniem menu wyświetlanym w menu skrótów. Form Ponieważ klasa dziedziczy z Controlklasy , można również użyć tej właściwości, jeśli ContextMenu jest ona skojarzona z formularzem.