允许对象移动的WPF容器

我和WPF一起工作,但是它使用XAML的复制粘贴,大部分是C#编写后台逻辑。 现在我想和朋友一起开始一个项目,并使用WPF,因为这将是一个GUI密集型的项目。

题:

在我们的应用程序中,我们希望有一个表面,我们可以把对象和用户应该能够移动周围的对象。 这应该是2D的。 通过移动,我的意思是点击一个对象,并在表面内拖动它。 最后,我认为这个运动应该只在一个方向(只有水平方向),但是现在应该可以朝任何方向移动它们。 唯一适用的限制是他们不能保持一个在另一个之上。

你能否给我提示我们应该使用什么样的容器表面,我们应该用什么基类来移动容器中的物体? 或者,WPF有什么东西可以在这种情况下使用? 一般提示我们应该如何开始这个将不胜感激。

我知道这对于WPF没有那么多经验的人来说是很多的,但是当我从C ++来到C#的时候,我也做了同样的事情:)。

帆布总是一个很好的容器来移动的东西。

看看这篇关于CodeProject的文章:

WPF关系图设计器:第1部分

它使用Canvas来显示项目,并实现代码以允许将项目拖到Canvas

这是一个来自.NET 3.5版本的博客帖子http://mtaulty.com/Communityserver/blogs/mike_taultys_blog/archive/2009/05/08/test-post-1.aspx

当讨论表达混合中的行为主题时,“可拖动”是一个常见的情况。