Click-Event löst nicht aus wenn nicht oberstes Steuerelement

multimolti

Erfahrenes Mitglied
Hallo!

Ich habe mir eine GroupBox geholt und lasse da on Runtime Bilder drauf zeichnen. Dann habe ich das MouseClick-Event benutzt, um zu ermitteln, auf welches Bild man geklickt hat. Das funktioniert aber nicht, weil das Bild ja über der GroupBox liegt und daher den Mausklick irgendwie abfängt, also löst das Event nur aus, wenn ich ganz an den Rand klicke, wo kein Bild ist.

Was kann ich da machen?

Danke für die Hilfe!
 
Hallo multimolti,

ich verstehe nicht ganz, wie du die Bilder auf der GroupBox erstellst. Arbeitst du mit der GDI+ oder erstellst du für die Bilder jeweils eine PictureBox bzw. ein anderes Steuerelement? Falls das so ist, musst du nämlich das MouseClick-Event des Bild-Steuerelements an seinen Parent - also die GroupBox - weiterleiten.

Gruß
PhoenixLoe
 
Warum nicht direkt das Klick Event der PictureBox.
Durch den Parameter sender hätte man dann sofort das Objekt.
 
Die PictureBox (oder was auch immer ich da nehme) hat kein Click-Event, aber ich habe es jetzt ganz einfach gelöst, indem ich Buttons genommen habe und bei denen als Image mein Bild gesetzt hab.
 
Die PictureBox (oder was auch immer ich da nehme) hat kein Click-Event, aber ich habe es jetzt ganz einfach gelöst, indem ich Buttons genommen habe und bei denen als Image mein Bild gesetzt hab.

Ein Click-Ereignis setzt sich aus einem MouseDown und einem MouseUp zusammen. Ein MouseUp sollte also das machen was du willst ;-)
 
Ich habe keine Ahnung mehr, auf jeden Fall konnte man außer der Location und dem Backgroundcolor nicht mehr viel setzen, und es gab überhaupt keine Events.
Aber die Buttons tuns ja auch, eigentlich sogar besser, ich habe die auf ButtonStyle = ButtonStyle.Flat gesetzt (oder so ähnlich), jetzt habe ich ganz normale Bilder da, die sogar ein bisschen die Farbe verändern, wenn man drüber hovert.
 
Dann wars nicht die PictureBox. Wie gesagt, ich habe keine Ahnung mehr, was es war, aber es konnte auf jeden Fall nix mit meinen Klicks anfangen.
 
Mich wüde wirklich interessieren was du für ein Control du hast.
Vielleicht kannst du das ja nochmal nach prüfen.

Von MS Haus eigene Controls sollten zumindest ein Click Event haben, ob der Designer dies anzeigt (z.B. durch Attribute unterdrückt) ist natürlich die andere Frage.
 
Zurück