我想在WPF中实现一个对接库,其行为类似于AdobePhotoshopsCS3。
可以通过鼠标拖动将浮动面板附加到其他面板或码头。码头有固定的位置。
你会使用中央对接管理器类吗?消息流的外观如何?我正在考虑使用两个接口,称为IDock和IDockable,面板同时实现这两个接口,而Dock只实现IDock。
我正在寻找一些特定的设计模式或OO原则,可以帮助我在这里,使总体设计是健全的。我知道这里我不是很具体,但那是因为我不知道从哪里开始。
面板到面板移动示例:
alt text http://dl.getdropbox.com/u/133877/Misc/Stackoverflow/wpf_dock_01.png
alt text http://dl.getdropbox.com/u/133877/Misc/Stackoverflow/wpf_dock_02.png
也许你可以开始学习 http://www.codeplex.com/AvalonDock 这是一个WPF停靠库。可能有一些东西可以从中学习。