mirror of
https://github.com/AtomUI/AtomUI.git
synced 2026-10-19 15:20:25 +08:00
4.1 KiB
4.1 KiB
Dialog Design Token
Dialog 控件使用 DialogToken(Token ID: "Dialog")作为组件级 Design Token,所有视觉属性均从全局 SharedToken 派生,不硬编码任何具体值。
Token 资源访问方式
在 AXAML 中使用组件级 Token:
{atom:TokenResource DialogHeaderBg}
{atom:TokenResource DialogContentBg}
{atom:TokenResource DialogHeaderFontSize}
在 AXAML 中使用全局共享 Token:
{atom:SharedTokenResource ColorBgElevated}
{atom:SharedTokenResource FontSizeHeading5}
{atom:SharedTokenResource PaddingContentHorizontalLG}
组件级 Token 一览
以下是 DialogToken 定义的全部组件级 Token,按功能分组说明。
颜色 Token
| Token 名 | 类型 | 来源 | 说明 |
|---|---|---|---|
HeaderBg |
Color |
Colors.Transparent |
标题区域背景色 |
HeaderColor |
Color |
SharedToken.ColorTextHeading |
标题字体颜色 |
ContentBg |
Color |
SharedToken.ColorBgElevated |
内容区域背景色 |
FooterBg |
Color |
Colors.Transparent |
底部区域背景色 |
字体 Token
| Token 名 | 类型 | 来源 | 说明 |
|---|---|---|---|
HeaderFontSize |
double |
SharedToken.FontSizeHeading5 |
标题字体大小 |
图标 Token
| Token 名 | 类型 | 来源 | 说明 |
|---|---|---|---|
LogoSize |
double |
SharedToken.SizeLG |
Overlay 对话框标题图标大小 |
CloseBtnSize |
double |
SharedToken.ControlHeight |
关闭按钮大小 |
间距 Token
| Token 名 | 类型 | 来源 | 说明 |
|---|---|---|---|
HeaderPadding |
Thickness |
基于 SharedToken.PaddingContentHorizontalLG 和 SharedToken.UniformlyPaddingSM |
标题区域内间距 |
HeaderMarginBottom |
Thickness |
基于 SharedToken.UniformlyMarginXS |
标题区域下外间距 |
ContentPadding |
Thickness |
基于 SharedToken.PaddingContentHorizontalLG 和 SharedToken.UniformlyPaddingMD |
内容区域内间距 |
FooterPadding |
Thickness |
基于 SharedToken.PaddingContentHorizontalLG 和 SharedToken.UniformlyPaddingMD |
底部区域内间距 |
FooterMarginTop |
Thickness |
基于 SharedToken.UniformlyMarginXS |
底部区域上外间距 |
ButtonGroupSpacing |
double |
SharedToken.SpacingXS |
底部按钮之间的间距 |
尺寸 Token
| Token 名 | 类型 | 来源 | 说明 |
|---|---|---|---|
MinHeight |
double |
基于 SharedToken.ControlHeightLG + HeaderPadding 计算 |
对话框默认最小高度 |
MinWidth |
double |
固定 200 |
对话框默认最小宽度 |
主题中使用的全局 SharedToken
除组件级 Token 外,Dialog 的 ControlTheme 还直接引用了以下全局 SharedToken:
| Token 资源键 | 使用场景 |
|---|---|
ColorBgElevated |
对话框整体背景色 |
ColorTextHeading |
标题文字颜色 |
FontSizeHeading5 |
标题字号 |
PaddingContentHorizontalLG |
水平内间距基准 |
PaddingContentHorizontalSM |
标题右侧内间距 |
UniformlyPaddingSM / UniformlyPaddingMD |
垂直内间距 |
UniformlyMarginXS |
标题/底部间距 |
SizeLG |
图标大小 |
ControlHeight / ControlHeightLG |
控件高度基准 |
SpacingXS |
按钮间距 |
ColorBgMask |
Overlay 模式遮罩层背景色 |
BorderRadiusLG |
对话框圆角 |
BoxShadowsSecondary |
对话框阴影 |
Token 对外观的具体影响
标题区域
- 背景色由
HeaderBg(默认透明)控制 - 字体大小由
HeaderFontSize控制 - 字体颜色由
HeaderColor控制 - 图标大小由
LogoSize控制 - 内间距由
HeaderPadding控制 - 与内容区域间隔由
HeaderMarginBottom控制
内容区域
- 背景色由
ContentBg控制 - 内间距由
ContentPadding控制
底部按钮区域
- 背景色由
FooterBg(默认透明)控制 - 内间距由
FooterPadding控制 - 与内容区域间隔由
FooterMarginTop控制 - 按钮间距由
ButtonGroupSpacing控制
整体尺寸约束
- 最小宽度由
MinWidth(200px)控制 - 最小高度由
MinHeight(从 HeaderPadding + ControlHeightLG 派生)控制