Wpf 构建对接工作区-如何构建?

Wpf 构建对接工作区-如何构建?,wpf,layout,Wpf,Layout,我正在为我的新应用程序创建一个工作区,它的工作方式是在屏幕左侧的一列中有一个可视元素列表,在右侧有一个空的工作区。当用户将一个新的UIElement从左手边拖到我的工作区(可能是一个网格或一种面板)时,我希望工作区显示4个箭头(对接箭头)-我知道当只有一个元素时,这没有多大意义。当用户现在将一个新的UIElement拖动到工作区时,我需要相同的4个固定箭头,允许我将新元素放置在现有UIElement的左侧、右侧或上方或下方 我希望每个UIElement也达到拖放行为,这意味着当我拖动一个UIEl

我正在为我的新应用程序创建一个工作区,它的工作方式是在屏幕左侧的一列中有一个可视元素列表,在右侧有一个空的工作区。当用户将一个新的UIElement从左手边拖到我的工作区(可能是一个网格或一种面板)时,我希望工作区显示4个箭头(对接箭头)-我知道当只有一个元素时,这没有多大意义。当用户现在将一个新的UIElement拖动到工作区时,我需要相同的4个固定箭头,允许我将新元素放置在现有UIElement的左侧、右侧或上方或下方

我希望每个UIElement也达到拖放行为,这意味着当我拖动一个UIElement时,我希望能够相对于我悬停在上面的那个UIElement停靠,从而允许我以这种方式构建整个工作区

当将新UIElement悬停在工作区中已放置UIElement的顶部时,在悬停在上方的项目上和外部“网格”上都应该有停靠箭头,允许我“全局”停靠。我让我的一个朋友在他正在使用的另一个程序中录制了一个小视频,讲述了这个程序是如何工作的——这是我正在寻找的类似行为:[LNK已删除]


请就如何构建这个提供建议-我正在研究DockPanels,因为这似乎是显而易见的方法…

codeplex上的Avalon dock库?免费的