2009-06-25 6 views
0

Ich habe ein Windows-Formular, das zwei Benutzersteuerelemente enthält. Ein Benutzersteuerelement enthält zwei Listenansichten. Die andere Benutzersteuerung hat ein Gitter.Mehrere Drag & Drop-Aktionen auf einem Steuerelement

Innerhalb der ersten Benutzersteuerung ziehen die beiden Listenansichten ihren Inhalt zwischeneinander.

Die Grid-Benutzersteuerung wurde so eingerichtet, dass sie auf die Listview-Benutzersteuerung gezogen wird.

Das Problem ist, dass das Drag-Drop-Ereignis innerhalb der Listview-Benutzersteuerung immer Vorrang vor dem Dragdrop zwischen den beiden Benutzersteuerelementen hat.

Wenn ich also aus dem Raster usercontrol über die Listview usercontrol ziehen wird es das interne Dragdrop-Ereignis des ListView-Steuerelement ausgeführt.

Mit anderen Worten: es löst dieses Ereignis

lv_groupActivites_DragDrop

statt

reservationScheduleBooking1_DragDrop

Gibt es trotzdem anzugeben, die Drop-Ereignis ziehen gefeuert werden sollte?

+0

Dies wäre ein bisschen ein Hack, aber Sie könnten die Ereignisbehandlungsroutine lv_groupActivities_DragDrop reservationScheduleBooking1_DragDrop aufrufen lassen. –

Antwort

1

Sie ziehen aus dem Raster in einem Benutzersteuerelement und versuchen, auf eine bestimmte Listview auf dem anderen Benutzersteuerelement oder irgendwo auf dem anderen Benutzersteuerelement ablegen?

Wenn Sie irgendwo auf dem anderen Benutzersteuerelement ablegen möchten, müssen Sie den Ereignishandler appromporte auf dieses Benutzersteuerelement einrichten, um zu reagieren. Wenn Sie zu einer bestimmten Listenansicht wechseln möchten, die auch Drag-Ereignisse von der anderen Listview akzeptiert, müssen Sie zusätzliche Arbeit in Ihrem Event-Handler in dieser Listview durchführen, um herauszufinden, wo der Drag-In initiiert wurde.

Verwandte Themen