我正在以这种方式在代码中创建面板:
DockableContent dockableContent = CreateDockableContent<TView>(model);
dockableContent.Show(_dockingManager, AnchorStyle.Bottom);
如何指定该面板的初始高度?以下不起作用:
dockableContent.Height = 400;
或
ResizingPanel.SetResizeHeight(dockableContent, new GridLength(400));
答案 0 :(得分:5)
对于固定高度设置的面板,设置DockMinHeight =“120”,DockHeight =“1 *”。对于其他面板集DockHeight =“90 *”。
在这种情况下,具有固定高度的面板将变得如此短,以至于将使用DockMinHeight。
答案 1 :(得分:3)
对于Avalon Dock 2.0,有一些内部代码会自动将DockWidth / DockHeight调整为星号。这使您无法在垂直/水平组窗格中具有固定/初始高度/宽度面板。
我能看到的唯一解决方法是从AvalonDock源代码中注释掉这种行为。即;在课程OnFixChildrenDockLengths
的{{1}}中
希望这会有所帮助。
答案 2 :(得分:1)
Nagg,
设置面板的高度仅影响浮动时的外观。当它停靠时,它受到“调整大小”面板的限制(看起来就像你自己想的那样)。
使用AvalonDock库中的默认大小创建调整大小的面板。
您可能希望查看AvalonDock的2.0版本 - 它可以更灵活地自定义Panel - 特别是因为它们可以绑定到ViewModel,您可以在其中更改其外观。
如果您仍想使用1.3,那么您必须修改AvalonDock源代码以使其执行您想要的操作(例如,添加默认面板高度)。
史蒂夫