[英]Avalon Dock and Caliburn Micro - no title on document pane (tab header)
[英]MVVM Floating Pane in Avalon Dock 2 (via Caliburn)
如何綁定到模型,以使Avalon Dock 2將其視為浮動窗格?
從根本上講,我想打開一個可以停靠的窗口,理想情況下可以使用MVVM解決方案。 但是,我能夠到達的最遠的地方是獲得可錨定物體,而且我看不出有任何誘使對接管理器使其漂浮的方法。
<xcad:DockingManager AnchorablesSource="{Binding Tools}">
<xcad:DockingManager.LayoutItemContainerStyle>
<Style TargetType="{x:Type xcad:LayoutItem}">
<Setter Property="Title" Value="{Binding Model.Title}"/>
</Style>
</xcad:DockingManager.LayoutItemContainerStyle>
<xcad:DockingManager.LayoutItemTemplate>
<DataTemplate>
<ContentControl cal:View.Model="{Binding . }" IsTabStop="False" />
</DataTemplate>
</xcad:DockingManager.LayoutItemTemplate>
</xcad:DockingManager>
我沒有按照浮動窗口的建議進行操作,但是我設法將Caliburn.Micro與AvalonDock集成在一起。 您將需要幾個示例來幫助您和編寫文檔。
簡而言之,將LayoutInitializer與ToolViewModelBase上的屬性結合使用,以指示應將錨定對象打開為浮動對象。
<avalonDock:DockingManager.LayoutUpdateStrategy>
<local:LayoutInitializer/>
</avalonDock:DockingManager.LayoutUpdateStrategy>
下面是您感興趣的AvalonDock源代碼,您將在Gemini中找到等效的代碼。
\\ Version2.0 \\ AvalonDock.MVVMTestApp \\ ToolViewModel.cs
\\ Version2.0 \\ AvalonDock.MVVMTestApp \\ LayoutInitializer.cs
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.