¿Cómo diseñaría una biblioteca de acoplamiento para WPF?
-
10-07-2019 - |
Pregunta
Quiero implementar una biblioteca de acoplamiento en wpf con un comportamiento similar al Adobe Photoshops CS3.
Puede adjuntar paneles flotantes a otros paneles o muelles arrastrando el mouse. Los muelles tienen una ubicación fija.
¿Usaría una clase central de Docking Manager? ¿Cómo sería el flujo del mensaje? Estaba pensando en usar 2 interfaces, llamadas IDock e IDockable, con el panel implementando ambas, y un dock implementando solo IDock.
Estoy buscando algunos patrones de diseño específicos o principios OO que podrían ayudarme aquí, para que el diseño general sea sólido. Sé que no soy realmente específico aquí, pero eso es porque no sé por dónde empezar.
Ejemplo de un movimiento de Panel a Panel:
texto alternativo http://dl.getdropbox.com/u /133877/Misc/Stackoverflow/wpf_dock_01.png
texto alternativo http://dl.getdropbox.com/u /133877/Misc/Stackoverflow/wpf_dock_02.png
Solución
Tal vez podría comenzar a estudiar http://www.codeplex.com/AvalonDock que es un biblioteca de acoplamiento wpf. Probablemente hay algo que aprender de él.