Nous avons une application WPF qui a des fenêtres personnalisées sur un canevas qui à son tour contiennent des contrôles personnalisés (le canevas principal contenant les fenêtres personnalisées est de nouveau un contrôle personnalisé affichant des trucs). Donc, fondamentalement, l'arbre visuel ressemble à ceci (sans implicite frontières et d'autres choses):Drag & Drop-Adorner dans les arbres visuels profondément imbriqués
- Windows
- Canvas
- WindowMgr
- CustomWindow (maximized with z-index 0, functioning as background)
- ScrollPresenter
- CustomControl1
- CustomWindow
- ScrollPresenter
- CustomControl2
Maintenant, nous avons besoin de faire glisser & déposer à partir de ces contrôles personnalisés à l'autre (généralement à partir d'une fenêtre mobile à la fenêtre d'arrière-plan). Pour montrer le drag & adorer un élément orné et une couche adorner est nécessaire. Habituellement, les exemples utilisent leur grille ou itemscontrol pour cela, et obtiennent également la couche adorner du même élément. Faire la même chose ici ne fonctionne pas puisque le ScrollPreseneter/CustomWindows clipent leur contenu, ce qui vous empêche de faire glisser hors de la fenêtre. Pour l'instant nous marchons dans l'arbre visuel jusqu'à ce que nous trouvions la toile de racine et l'utilisions comme élément orné, mais cela semble un peu sale (et comme nous l'avons expérimenté n'est pas très robuste).
Des suggestions sur une solution robuste pour cela?