可停靠工具栏

时间:2018-07-02 10:12:21

标签: wpf toolbar dockable

我的应用程序中有一个包含工具栏的区域,我的工具栏由可移动的画布组成,可以将其拖放到任何地方,我想做的是限制用户并且不允许将工具栏移出在这个区域 并使其可停靠,因此我可以将其停靠在此指定区域的左,右,顶部和底部,

在这种情况下有人可以帮助我吗?

下面的快照显示工具栏用红色突出显示,限制区域用黑色突出显示,该区域用户无法将工具栏移出

Here is the snapshot

1 个答案:

答案 0 :(得分:0)

完成拖动操作后,您可以重置工具栏的位置。

首先获取相对于Canvas的工具栏坐标,然后将其转换为相对于bound的坐标(黑色区域)。

然后,您可以计算工具栏中心距bound的每个边缘的距离。如果距离小于定义的值,则将工具栏移至边缘(以将其停靠),如果将工具栏停靠至左右边缘,则需要将其旋转90度。

类似这样的事情。