Hinzufügen von Optionen zum Kontextmenü der Maus in PowerShell-Formularen

1009
igor

Ich habe ein einfaches PowerShell-Formular mit einem textbox. Wenn ich mit der rechten Maustaste darauf klicke textbox, wird ein Standardmenü mit Kopieren, Ausschneiden, Einfügen usw. angezeigt.

Mein Ziel ist es, eine "Clear Log" -Option hinzuzufügen, die den aktuellen textboxInhalt löscht . Wie kann ich diese Option zum Rechtsklick-Menü hinzufügen, anstatt eine eigentliche separate Schaltfläche zu erstellen / zeichnen?

1
Die Option wird nur für dieses Formular aktiviert. Ich schaue nicht in einer allgemeinen Lösung mit der rechten Maustaste auf die Registrierung igor vor 6 Jahren 0

1 Antwort auf die Frage

2
igor

Um einen ContextMenuStrip zuerst für eine TextBox anzeigen zu können, sollten Sie die ShortcutsEnabled-Eigenschaft der TextBox auf false setzen und dann ihrer ContextMenuStrip-Eigenschaft einen ContextMenuStrip wie folgt zuweisen:

$form1= New-Object System.Windows.Forms.Form $textBox1 = New-Object System.Windows.Forms.TextBox $contextMenuStrip1 = New-Object System.Windows.Forms.ContextMenuStrip  $contextMenuStrip1.Items.Add("Item 1") $contextMenuStrip1.Items.Add("Item 2")  $textBox1.ShortcutsEnabled = $false $textBox1.ContextMenuStrip = $contextMenuStrip1  $form1.Text="Context Menu for TextBox" $form1.Controls.Add($textBox1)  $form1.ShowDialog() 
Dank an Reza Aghaei von stackoverflow igor vor 6 Jahren 0