SxTreeItem UI 设计规范

自动生成时间: 2026-02-04 组件路径: src/NextUI.Blazor/Components/SxTreeItem.razor

1. 组件概述

  • 组件包含 1 个参数,0 个回调,0 个公开方法。
  • 内部组合组件:SxIcon, SxTree, SxTreeItem。

2. 组件模式

模式 条件 说明
条件渲染 Item.Children.Any( 影响局部渲染块
条件渲染 !string.IsNullOrEmpty(Item.Icon 影响局部渲染块
条件渲染 Item.IsExpanded && Item.Children.Any( 影响局部渲染块

3. 表单字段

字段组件 绑定
- -

4. 操作按钮

外观 动作/链接 禁用条件
- - -

5. 验证规则

未检测到显式验证标记。

6. 状态与流程

内部状态字段: 未检测到明确状态字段。

7. 公共 API

7.1 Parameters

参数 类型 默认值 说明
Item SxTree.SxTreeItemData new()

7.2 Public Methods

无公开方法。

7.3 Events/Callbacks

无回调事件。

8. 典型使用场景 (Use Cases)

8.1 UC-1: 基础渲染

  1. 组件渲染默认状态
  2. 关键区域可见
  3. 无异常

9. 状态不变性测试 (State Invariants)

  • 同一参数重复设置不应触发非必要 UI 改变
  • 与表单字段无关的操作不应影响字段值

10. 测试检查点

  • 条件 Item.Children.Any( 下渲染正确
  • 条件 !string.IsNullOrEmpty(Item.Icon 下渲染正确
  • 条件 Item.IsExpanded && Item.Children.Any( 下渲染正确

11. Fluent UI 对齐

对应 Fluent UI Blazor 组件:FluentTreeItem 源码:src/Core/Components/TreeView/FluentTreeItem.razor(.cs) 对齐要点:

  • Expanded/Selected 支持双向回调;InitiallyExpanded/InitiallySelected 在初始化时生效。
  • IconCollapsed/IconExpanded 控制折叠/展开图标;Disabled 阻止交互。
  • 通过 Owner 注册并参与选中状态同步。 关键参数/事件:
  • ExpandedExpandedChangedSelectedSelectedChangedInitiallyExpandedInitiallySelectedIconCollapsedIconExpanded。 差异与扩展:
  • SxTreeItem 需保留初始化状态逻辑与 Owner 注册机制。

12. 参考文档摘要

  • docs/CODE_QUALITY_IMPROVEMENT_PROGRESS.md: 代码质量改进进度 > 创建日期: 2026-01-13
  • docs/components/SxTree.md: SxTree (树形列表) - Implemented

13. 规范合规检查

  • 未检测到明显硬编码颜色/px。

14. 变更历史

  • 2026-02-04: 深度分析填充规范。