有人可以向我提供 AvalonDock XAML 代码段,在运行时打开带有 float 窗口的应用程序,而不是始终停靠在停靠面板内吗?我已经看到了以编程方式执行此操作的方法,但我认为必须有一种方法可以在 XAML 中指定它。谢谢...
最佳答案
我知道这有点晚了,但希望它可以帮助将来遇到同样问题的人......
要创建 float 文档,请添加一个 LayoutDocumentFloatingWindow 作为 LayoutDocumentFloatingWindow 的子项,然后将您的 LayoutDocument 添加为 LayoutDocumentFloatingWindow 的子项,如下所示:
<xcad:DockingManager>
<xcad:LayoutRoot>
<xcad:LayoutRoot.FloatingWindows>
<xcad:LayoutDocumentFloatingWindow>
<xcad:LayoutDocument Title="My Document">
<!--Add document content here-->
</xcad:LayoutDocument>
</xcad:LayoutDocumentFloatingWindow>
</xcad:LayoutRoot.FloatingWindows>
</xcad:LayoutRoot>
</xcad:DockingManager>
同样,您可以像这样添加 anchor :
<xcad:DockingManager>
<xcad:LayoutRoot>
<xcad:LayoutRoot.FloatingWindows>
<xcad:LayoutAnchorableFloatingWindow>
<xcad:LayoutAnchorablePaneGroup>
<xcad:LayoutAnchorablePane>
<xcad:LayoutAnchorable Title="My anchorable">
<!--Add anchorable content here-->
</xcad:LayoutAnchorable>
</xcad:LayoutAnchorablePane>
</xcad:LayoutAnchorablePaneGroup>
</xcad:LayoutAnchorableFloatingWindow>
</xcad:LayoutRoot.FloatingWindows>
</xcad:LayoutRoot>
请注意,与 LayoutDocuments 不同的是,对于 anchor ,您需要添加一个组 Pane ,而不仅仅是一个 LayoutAnchorable,因为 float anchor 被设计为能够在单个窗口中进行分组,而 LayoutDocuments 则不是。
作为更一般的指南,可以在此处找到如何在 DockingManager 中设置各种布局元素的示例:https://xceed.com/wp-content/documentation/xceed-toolkit-plus-for-wpf/AvalonDock.html
关于AvalonDock 中 float 窗口的 XAML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8813956/