我知道这是一个非常开放的问题,所以请耐心等待 - 是否有任何好方法来模仿Visual Studio 2012 interface的外观和感觉?我非常想模仿拖放功能和设计的整体清洁度。
到目前为止,我了解AvalonDock,WPFMDI,SyncFusion的approach和Infragistic的Dock Manager。 Infragistic的方法看起来很像我想要的,但1)我不知道我是否可以在我的current project(许可证等)中使用它们2)我想知道(至少在关于他们实际工作的方式。任何人都可以了解他们如何处理这个问题吗?
我会将我的思路发布作为初学者的答案。
Visual Studio的界面(2012)
AvalonDock 2.0
WPFMDI (有点难看)
SyncFusion的Dock Manager (非常不开源)
最后 Infragistic的对接管理器(也是商业)
同样,VS2012模仿是目标 - 这些只是一堆已经试图在一般情况下完成这一目标的项目。
答案 0 :(得分:0)
在我的愚蠢逻辑中,每个选项卡式界面实际上应 一个标签。
当用户点击并将标签拖动到主要方向时(水平标签的左/右,垂直的顶部/底部),标签应更改其顺序以适应并且视图应保持不变。
但是,如果选项卡垂直于其主要方向拖动,则应该使用选项卡快照,它应缩小到原始大小的约60%,并且应该去饱和/半透明。当用户拖动它时,图像显然应该跟随。
当用户鼠标进入TabContainer
(Canvas的子类?Page?I dunno)的中心区域时,会弹出一个小叠加层以便于对接。
如果用户将其拖动到TabBar
,它会将其自身添加到TabBar
上的相应位置(根据鼠标的位置等)。每个TabContainer
只有一个TabBar
。
我在这个设计中无法弄清楚的是如何对选项卡进行分级并使其固定/浮动/自动隐藏等。正如在VS中发生的那样。