You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Avalonia应用启动时如何设置Dock标签页自动隐藏/固定?

Avalonia Dock UI 启动时设置标签页自动隐藏的解决方法

要实现启动时让Dock UI的部分标签页自动隐藏(边缘停靠、鼠标悬停时展开),你需要使用AutoHide属性而非IsExpanded,具体操作如下:

1. 核心原理

IsExpanded仅用于控制已开启自动隐藏的面板的展开/收起状态,而自动隐藏功能本身需要通过AutoHide属性启用,同时需指定AutoHidePosition确定面板停靠的边缘(左/右/上/下)。

2. XAML 中直接配置

在XAML里给目标ToolDock或单个ToolTabItem设置AutoHide="True"和AutoHidePosition:

<Dock:DockControl>
    <Dock:LayoutRoot>
        <Dock:LayoutPanel Orientation="Horizontal">
            <!-- 整个工具停靠区设置自动隐藏 -->
            <Dock:ToolDock x:Name="LeftToolDock" AutoHide="True" AutoHidePosition="Left">
                <Dock:ToolTabItem Title="调试面板">
                    <TextBlock Text="调试信息展示区" />
                </Dock:ToolTabItem>
                <Dock:ToolTabItem Title="属性面板">
                    <TextBlock Text="属性编辑区" />
                </Dock:ToolTabItem>
            </Dock:ToolDock>

            <!-- 主内容区域 -->
            <Dock:LayoutDocumentPane>
                <Dock:LayoutDocument Title="主编辑窗口">
                    <TextBlock Text="主内容区域" />
                </Dock:LayoutDocument>
            </Dock:LayoutDocumentPane>
        </Dock:LayoutPanel>
    </Dock:LayoutRoot>
</Dock:DockControl>

3. 代码后台动态设置

如果需要在应用启动时通过代码控制,可在窗口的OnInitialized或OnLoaded事件中操作:

using Avalonia.Controls;
using Dock.Model.Controls;

public class MainWindow : Window
{
    public MainWindow()
    {
        InitializeComponent();
    }

    protected override void OnInitialized()
    {
        base.OnInitialized();
        var leftToolDock = this.FindControl<ToolDock>("LeftToolDock");
        if (leftToolDock != null)
        {
            leftToolDock.AutoHide = true;
            leftToolDock.AutoHidePosition = AutoHidePosition.Left;
            // 如果需要启动时保持收起状态,可额外设置
            leftToolDock.IsExpanded = false;
        }
    }
}

注意事项

  • 若只需要单个ToolTabItem自动隐藏,可直接给该ToolTabItem设置AutoHide属性,无需给父ToolDock设置。
  • 确保已正确引用Dock UI的命名空间(通常是xmlns:Dock="clr-namespace:Dock.Avalonia.Controls;assembly=Dock.Avalonia")。

内容的提问来源于stack exchange,提问作者lqjun

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.23 14:25:57