Как бы вы спроектировали док-библиотеку для WPF?
Я хочу реализовать док-библиотеку в wpf с поведением, аналогичным Adobe Photoshop CS3.
Вы можете прикрепить плавающие панели к другим панелям или докам с помощью перетаскивания мышью. Доки имеют фиксированное местоположение.
Будете ли вы использовать центральный класс Docking Manager? Как будет выглядеть поток сообщений? Я думал об использовании двух интерфейсов, называемых IDock и IDockable, с панелью, реализующей оба, и док-станцией, реализующей только IDock.
Я ищу некоторые специфические шаблоны проектирования или принципы ОО, которые могли бы помочь мне в этом, чтобы в целом дизайн был надежным. Я знаю, что я не очень конкретен здесь, но это потому, что я не знаю, с чего начать.
Пример перемещения панели на панель:
http://dl.getdropbox.com/u/133877/Misc/Stackru/wpf_dock_01.png
http://dl.getdropbox.com/u/133877/Misc/Stackru/wpf_dock_02.png
1 ответ
Может быть, вы могли бы начать изучать http://www.codeplex.com/AvalonDock который является док-библиотекой wpf. Наверное, есть чему поучиться.