vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
NEU! sevCoolbar 3.0 - Professionelle Toolbars im modernen Design!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Ein- und Umsteiger
Re: vb2008: KontextmenüItems eines Buttons Im FlowLayoutPanel ansprechen? 
Autor: audiator
Datum: 18.07.08 11:33

Zitat:


Im Prinzip brauchst Du ja nur das ContextMenuStrip-Control der ContextMenuStrip-Eigenschaft des Buttons zuweisen:

btnHeader.ContextMenuStrip = Me.ContextMenuStrip1


Hallo Dieter,

soweit habe ich das schon versucht. Damit öffnet sich das Kontextmenü wenn ich mit der rechten Maustaste auf den Button klicke.

Wie aber müssen die Events zu den den einzelnen ToolStripMenüItems aussehen?

Habe noch folgendes versucht:
in der While Schleife jedem Button sein eigenes Kontextmenü hizuzufügen

Dim cmsCustomer = New ContextMenuStrip
Dim tsmEdit = New System.Windows.Forms.ToolStripMenuItem
Dim tsmDetail = New System.Windows.Forms.ToolStripMenuItem
Dim tsmDelete = New System.Windows.Forms.ToolStripMenuItem
 
While...
'im Abschnitt CardPanel
CardPanel.Controls.Add(cmsCustomer)
 
'im Abschnitt btnHeader
btnHeader.ContextMenuStrip = cmsCustomer
 
'neue Abschnitte fürs Kontextmenü
'cmsCustomer
'
cmsCustomer.Items.AddRange(New System.Windows.Forms.ToolStripItem() {tsmEdit, _
  tsmDetail, tsmDelete})
cmsCustomer.Name = "cmsCustomer"
cmsCustomer.RenderMode = System.Windows.Forms.ToolStripRenderMode.Professional
cmsCustomer.Size = New System.Drawing.Size(153, 92)
'
'tsmEdit
'
tsmEdit.Name = "tsmEdit"
tsmEdit.Size = New System.Drawing.Size(152, 22)
tsmEdit.Text = "edit"
tsmEdit.Tag = varID     'wie beim Button die ID mitgeben
'
'tsmBehandlung
'
tsmDetail.Name = "tsmDetail"
tsmDetail.Size = New System.Drawing.Size(152, 22)
tsmDetail.Text = "Detail"
tsmDetail.Tag = varID     'wie beim Button die ID mitgeben
'
'tsmDetail
'
tsmDelete.Name = "tsmDelete"
tsmDelete.Size = New System.Drawing.Size(152, 22)
tsmDelete.Text = "delete"
tsmDelete.Tag = varID     'wie beim Button die ID mitgeben
 
'...
 
AddHandler tsmEdit.Click, AddressOf tsmEditClick
AddHandler tsmDetail.Click, AddressOf tsmDetailClick
AddHandler tsmDelete.Click, AddressOf tsmDeleteClick
 
End While
'...
End Sub
 
'genau wie vorher beim Button (wo es reibungslos funktioniert)
Private Sub tsmEditClick(ByVal sender As System.Object, ByVal e As _
  System.EventArgs)
   Dim tEdit As ToolStripMenuItem = CType(sender, ToolStripMenuItem)
 
   frmContactsEdit.lblKdID.Text = tEdit.Tag.ToString
End Sub
Wenn ich nun aber starte bekomme ich die Fehlermeldung:

das Steuerelement der obersten Ebene kann nicht zu einem Steuerelement hinzugefügt werden.

Das heißt wohl, dass ich das mit Kontextmenü für jeden Button einzeln vergessen kann.

Hat noch jemand eine Idee???

Marco

MS Visual Studio 2010 Prof.
MS Windows 7 Ultimate 64-bit
INTEL QuadCore Q6600 @2,40 GHz / 8GB RAM

alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
vb2008: KontextmenüItems eines Buttons Im FlowLayoutPanel an...2.847audiator17.07.08 21:43
Re: vb2008: KontextmenüItems eines Buttons Im FlowLayoutPane...1.498ModeratorDieter18.07.08 08:16
Re: vb2008: KontextmenüItems eines Buttons Im FlowLayoutPane...1.963audiator18.07.08 11:33
Re: vb2008: KontextmenüItems eines Buttons Im FlowLayoutPane...1.548ModeratorDieter18.07.08 11:42
Re: vb2008: KontextmenüItems eines Buttons Im FlowLayoutPane...1.498cookstdu19.07.08 09:38
Re: vb2008: KontextmenüItems eines Buttons Im FlowLayoutPane...1.444audiator19.07.08 10:07

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel