4

有人可以为我提供一个 AvalonDock XAML 代码片段,它在运行时会打开带有浮动窗口的应用程序,而不是总是停靠在停靠窗格内?我已经看到了以编程方式执行此操作,但我认为必须有一种方法可以在 XAML 中指定它。谢谢...

4

1 回答 1

3

我知道这有点晚了,但希望它可以帮助将来遇到同样问题的人......

要创建浮动文档,请将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>

同样,您可以像这样添加可锚定对象:

<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 不同,对于可锚定对象,您需要添加一个组窗格,而不仅仅是单个 LayoutAnchorable,因为浮动锚定对象旨在能够在单个窗口中分组,但 LayoutDocuments 不是。

作为更一般的指南,可以在此处找到如何在 DockingManager 中设置各种布局元素的示例:https://xceed.com/wp-content/documentation/xceed-toolkit-plus-for-wpf/AvalonDock。 html

于 2016-10-03T13:54:58.580 回答