我正在尝试实施Telerik Rad Docking控件。
我想强制它,以便物品永远不会浮动窗户。它们应该始终停靠。
我们应该能够在码头之间移动它们,但是如果你将它从码头区域中移出,它应该自动返回到它之前的位置。
我一直在查看事件args中的PaneStateChange事件和它的OriginalSource属性,但找不到方法来检查窗格是否在可停靠的热点上。
我不确定上面的事件是否在第一次被“拾取”和被丢弃时都被触发了。
很抱歉,如果我的问题看起来有点模糊。
感谢。
答案 0 :(得分:2)
我自己几天都在寻找这个问题的答案。我最终在文档中找到了答案:
http://www.telerik.com/help/aspnet-ajax/dock-getting-started.html
在RadControl中设置属性DockMode =“Docked”会强制执行RadDock必须在允许或非禁止 RadZones中结束的行为。
答案 1 :(得分:0)
我找不到我所寻找的确切答案。
但是,我们正在保存停靠项目的位置,并且在保存布局配置之前,只是编写了一些代码来将任何浮动窗口停靠到最近的罗盘点。
答案 2 :(得分:0)
我一直在寻找相同的功能,截至2013年第一季度它仍然存在。我花了一段时间才在Telerik文档中找到它,所以我想我会为其他人省去麻烦:
随着2013年第一季度WPF [AND SILVERLIGHT]官方用户界面的发布,我们为Docking控件引入了一种新的DragDrop模式,可以拖放窗格而不会让它们浮动。
可以使用Enum类型的新DragDropMode属性打开此行为,并且可以将其设置为以下任何值:
立即 - 默认的DragDrop行为。
延迟 - 提供一种完全不同的处理RadDocking内部拖放的方法。有了它,你可以禁止浮动窗格,同时允许拖动窗格。
注意:延迟时,面板只能通过ContextMenu浮动(如果你根本不想启用它,请隐藏它)