设置Avalon对接中面板的初始高度
本文关键字:高度 Avalon 设置 | 更新日期: 2023-09-27 18:28:13
我以这种方式在代码中创建面板:
DockableContent dockableContent = CreateDockableContent<TView>(model);
dockableContent.Show(_dockingManager, AnchorStyle.Bottom);
如何指定该嵌板的初始高度?以下不起作用:
dockableContent.Height = 400;
或
ResizingPanel.SetResizeHeight(dockableContent, new GridLength(400));
对于具有固定高度的面板,设置DockMinHeight="120"和DockHeight="1*"。对于其他面板,请将DockHeight设置为"90*"。
在这种情况下,具有固定高度的面板将变得很短,因此将使用DockMinHeight。
对于Avalon Dock 2.0,有一些内部代码会自动将DockWidth/DockHeight调整为星形大小。这将阻止您在垂直/水平组窗格中使用固定/初始高度/宽度面板。
目前我能看到的唯一解决方案是从AvalonDock源代码中注释掉这种行为。即在LayoutAnchorablePaneGroupControl
类的OnFixChildrenDockLengths
中
希望这能有所帮助。
Nagg,
设置面板的高度只会影响其浮动时的外观。当它停靠时,它会受到"调整大小"面板的限制(看起来像是您自己想出来的)。
调整面板大小是在AvalonDock库中使用默认大小创建的。
您可能想了解AvalonDock的2.0版本,它在自定义面板方面提供了更大的灵活性,尤其是因为它们可以绑定到ViewModel,在那里您可以更改它们的外观。
如果你仍然想使用1.3,那么你必须修改AvalonDock源代码,让它做你想做的事情(例如,添加默认的面板高度)。
Steve