Hallo,
dies ist meine erste Frage hier...
Ich erstelle ein einfaches Kontextmenü mit:
Das Kontextmenü wird angezeigt, ich kann ein Item auswählen und bekomme es in ContextMenuStrip_ItemClicked auch sauber angezeigt.
Soweit so gut.
Das Problem ist, daß das Kontextmenü nicht modal angezeigt wird. D.h. mein Programm läuft weiter, ich kann beliebige andere Steuerelemente und Menüs anwählen während das Kontextmenü sichtbar bleibt. Es wird erst geschlossen, wenn ich tatsächlich ein Item anklicke.
Normalerweise sollte das Menü modal angezeigt sein und die Escape-Taste oder ein Mausklick außerhalb des Kontextmenüs sollte dieses abbrechen und schliessen.
Wie kann ich denn dieses Verhalten erreichen?
Viele Grüße
Tom
dies ist meine erste Frage hier...
Ich erstelle ein einfaches Kontextmenü mit:
Code:
Private Sub PopupShow() Dim pop As New ContextMenuStrip AddHandler pop.ItemClicked, AddressOf ContextMenuStrip_ItemClicked For i As Integer = 0 To sCamAnis.Count - 1 Dim it As New ToolStripMenuItem it.Text = sCamAnis(i).name it.Tag = i pop.Items.Add(it) Next ' ContextMenü an der aktuellen Mausposition anzeigen pop.Show(Cursor.Position) End Sub Private Sub ContextMenuStrip_ItemClicked(ByVal sender As Object, _ ByVal e As System.Windows.Forms.ToolStripItemClickedEventArgs) Debug.Print(e.ClickedItem.ToString) End Sub
Soweit so gut.
Das Problem ist, daß das Kontextmenü nicht modal angezeigt wird. D.h. mein Programm läuft weiter, ich kann beliebige andere Steuerelemente und Menüs anwählen während das Kontextmenü sichtbar bleibt. Es wird erst geschlossen, wenn ich tatsächlich ein Item anklicke.
Normalerweise sollte das Menü modal angezeigt sein und die Escape-Taste oder ein Mausklick außerhalb des Kontextmenüs sollte dieses abbrechen und schliessen.
Wie kann ich denn dieses Verhalten erreichen?
Viele Grüße
Tom