# WindowBar / 窗口栏

当前 `AntdUI.dll` 反射结果中**没有**公开的 `AntdUI.WindowBar` 控件类型；旧文档或索引中的 WindowBar 更接近“窗口标题栏/无边框窗口栏”这一类需求。当前版本更建议使用以下方案：

- aardio 原生无边框窗口：`win.ui.simpleWindow` / `win.ui.simpleWindow3`。
- AntdUI 标题区：`AntdUI.PageHeader`，适合嵌入普通 aardio 窗口的内容顶部。
- AntdUI 原生窗体：`AntdUI.Window` 或 `AntdUI.BaseForm`，适合完全使用 WinForms/AntdUI 体系构建窗口。

## 推荐：PageHeader 作为内容标题栏

```aardio
import win.ui;
import dotNet.AntdUI;
import System.Drawing;

var winform = win.form(text="PageHeader 标题栏";right=720;bottom=420);
winform.add(host={cls="custom";left=0;top=0;right=720;bottom=420;z=1});

var baseForm = AntdUI.BaseForm(winform.host);

var header = AntdUI.PageHeader();
header.Parent = baseForm;
header.Location = System.Drawing.Point(0,0);
header.Size = System.Drawing.Size(720,64);
header.Text = "页面标题";
header.Description = "用 PageHeader 模拟内容区标题栏";
header.UseTitleFont = true;

var panel = AntdUI.Panel();
panel.Parent = baseForm;
panel.Location = System.Drawing.Point(16,80);
panel.Size = System.Drawing.Size(688,300);
panel.Text = "这里放页面内容";

winform.show();
win.loopMessage();
```

## AntdUI.Window 说明

`AntdUI.Window` 是 AntdUI 自身的窗体类，当前 DLL 公开的常用成员包括：

- `Resizable`：是否允许调整大小。
- `BorderColor`：边框颜色。
- `ShowInTaskbar`：是否显示到任务栏。
- `Size`、`ClientSize`、`Location`、`Width`、`Height`。
- `IsMax`：是否最大化。
- `RefreshDWM()`：刷新 DWM 相关效果。

在 aardio 项目中，如果只是要在现有 aardio 窗口上嵌入 AntdUI 控件，通常不必直接创建 `AntdUI.Window`；直接使用 `win.form + custom + AntdUI.BaseForm` 更稳妥。

## aardio 原生无边框窗口方案

如果目标是“窗口无边框 + 阴影 + 标题栏按钮”，aardio 侧通常更推荐：

```aardio
import win.ui;
import win.ui.simpleWindow;

var winform = win.form(text="无边框窗口";right=720;bottom=420;border="none");
win.ui.simpleWindow(winform);

winform.show();
win.loopMessage();
```

然后在窗口客户区放置 `custom` 控件承载 AntdUI 内容。

## 注意事项

- 不要写 `AntdUI.WindowBar()`：当前 DLL 没有这个公开类型，会导致运行错误。
- 如果以后上游重新加入 `WindowBar`，可根据 DLL 反射结果再补充独立控件示例。
- AntdUI 静态弹层的 owner 建议使用 `AntdUI.BaseForm(winform.custom)`，而不是直接传 aardio 窗口句柄。
