# TextBlock 自定义样式指南 TextBlock 的视觉表现通过 Avalonia 原生属性和 AtomUI 全局 Token 资源控制。由于 TextBlock 没有 ControlTheme,样式定制主要通过属性设置和 Style 选择器实现。 --- ## 1. 使用属性直接控制 最简单的方式是通过 TextBlock 的公共属性来控制外观: ```xml ``` --- ## 2. 通过 Style 覆盖样式 ### 全局文本样式 ```xml ``` ### 使用 CSS-like 类选择器 ```xml ``` ### 上下文样式(在特定容器内) ```xml ``` --- ## 3. 富文本(Inlines) 通过 `Inlines` 实现段内混合格式: ```xml ``` --- ## 4. 模拟 Ant Design Typography 变体 Ant Design 的 `Typography.Text` 支持多种变体。在 AtomUI 中可通过样式类模拟: ```xml ``` --- ## 样式选择器速查 > 说明:Avalonia 样式选择器中使用 `atom|TextBlock` 语法引用 `atom` XML 命名空间下的 `TextBlock` 类型,其中 `|` 是命名空间分隔符。 ### 基本选择 | 选择器 | 说明 | |---|---| | `atom\|TextBlock` | 匹配所有 AtomUI TextBlock 实例 | ### 按属性选择 | 选择器 | 说明 | |---|---| | `atom\|TextBlock[TextWrapping=Wrap]` | 匹配设置了换行的 TextBlock | | `atom\|TextBlock[FontWeight=Bold]` | 匹配粗体 TextBlock | ### 按样式类选择 | 选择器 | 说明 | |---|---| | `atom\|TextBlock.heading` | 匹配带 `heading` 样式类的 TextBlock | | `atom\|TextBlock.secondary` | 匹配带 `secondary` 样式类的 TextBlock | ### 按伪类选择 | 选择器 | 说明 | |---|---| | `atom\|TextBlock:pointerover` | 鼠标悬浮状态 | | `atom\|TextBlock:disabled` | 禁用状态 | ### 上下文选择 | 选择器 | 说明 | |---|---| | `atom\|FormItem atom\|TextBlock` | FormItem 内的 TextBlock | | `StackPanel atom\|TextBlock` | StackPanel 内的 TextBlock |