Files
AtomUI/docs/performances
..

AtomUI 控件性能优化总览

本目录用于沉淀 AtomUI 控件性能优化的基线、方案、关键取舍和最终结果。

测试工具位于 tools/performances。

样式 selector 与代码状态机的性能边界见:style-vs-code-guidelines.md。

Avalonia 12 控件库研发的成本模型与高频踩雷点(含 path:line 引用)见:avalonia12-control-library-pitfalls.md。

按 Fan-In / Fan-Out 排序的 Desktop 控件优化任务路线图(含 ColorPicker、DataGrid 包)见:desktop-controls-optimization-roadmap.md。

目录规范

  • 每个控件或共享性能体系使用一个独立目录,目录名使用控件名的大小写写法,例如 AddOnDecoratedBox、LineEdit。
  • 控件目录内保留该控件自己的 README、长期复用的方案、基线、最终结果和复现命令;阶段中间记录应合并到 README 或最终结果文档。
  • 跨控件共享的基础设施可以单独成目录,例如 AddOnDecoratedBox。
  • Gallery 级页面实测放到最直接受影响的控件目录下,并在文档内说明是否包含 Gallery 上层成本。

入库规则

应进入版本控制:

  • 总览、guide、控件目录 README。
  • 控件级优化方案、关键设计取舍、优化前基线和最终结果的摘要。
  • 对应 ShowCase 加载时间优化对比、Gallery 真实场景的汇总结论和复现命令,统一汇总到控件 README。

不进入版本控制:

  • 单独的阶段计划、baseline、final、optimized 等中间 markdown 文件。
  • 阶段中间跑分输出。
  • 一次性评估草稿。
  • 可由工具重新生成的逐次 sample 原始输出。
  • /tmp worktree 中生成的 baseline 对照结果。

测试口径

口径 工具 用途 注意事项
控件级基准 tools/performances/AtomUI.Performance 单控件、小组合、批量实例化、专项行为验证 不代表 Gallery 页面打开体验
Gallery 场景复现 tools/performances/AtomUI.GalleryPerformance 真实 Workspace route、真实 showcase XAML、真实视觉树稳定耗时 必须证明源 XAML 和运行时控件形态一致

控件存在对应 Gallery ShowCase 时,控件 README 必须单独列出 ShowCase 加载时间优化对比,至少包含 cold first navigation、repeated mean、repeated median、repeated P95,并标明 cold sample count、warmup/iterations。Cold first navigation 必须使用独立进程多样本,不能用单样本声明提升。

当前文档

控件/体系 状态 目录 关键结果
AddOnDecoratedBox 本轮已完成 AddOnDecoratedBox 默认 LineEdit visual/root 26 -> 20,KB/item 503.8 -> 398.4,默认 icon scan 360 -> 0
Icon 本轮已完成 Icon IconShowCase repeated 193.31ms -> 173.36ms,alloc 57900.83KB -> 46331.65KB;generated metadata 与 transform literal 已同步 AntDesign/Material/IconPark;Select.Default 默认隐藏 slot 从 Icon/root 3 -> 1、Button/root 1 -> 0
LineEdit 本轮已完成 Gallery 实测 LineEdit LineEditShowCase 重复导航均值 229.07ms -> 183.98ms,提升 19.68%
Button 本轮已完成 Button loading/icon/wave 默认 slot 已按需创建;ButtonShowCase visuals 1128 -> 964,IconPresenter 92 -> 51,repeated mean 134.60ms -> 101.53ms
ButtonSpinner 本轮已完成 ButtonSpinner HiddenHandle visuals 25 -> 10,KB/item 474.4 -> 212.5;ButtonSpinnerShowCase visuals 725 -> 681,alloc 14900.81KB -> 13514.36KB
Space 本轮已完成 Space CompactSpaceItem 93 -> 75,visuals 1864 -> 1846,SpaceShowCase repeated mean 165.32ms -> 150.48ms
AutoComplete 本轮已完成 AutoComplete 关闭态 _candidateList 13 -> 0;AutoCompleteShowCase repeated mean 74.97ms -> 55.63ms,alloc 8143KB -> 7664.37KB
Avatar 本轮已完成 Avatar AvatarShowCase repeated mean 42.33ms -> 32.54ms,visuals 360 -> 258,alloc 7252.55KB -> 5824.01KB
Badge 本轮已完成 Badge hidden zero CountBadgeAdorner/root 1 -> 0,DotBadge 无文本 Label/root 1 -> 0;BadgeShowCase visuals 497 -> 485
Breadcrumb 本轮已建立基线并修复 separator 传播 Breadcrumb 父级 Separator 变化现在同步到 direct/generated inherited items,local/data separator 继续胜出;BreadcrumbShowCase cold mean 92.98ms -> 87.53ms,repeated P95 36.72ms -> 34.00ms,repeated median 基本持平
Card 本轮已完成 Card CardShowCase repeated mean 78.11ms -> 50.66ms,visuals 784 -> 582;CardActionPanel 18 -> 3,Skeleton 18 -> 0
Carousel 本轮已完成 Carousel CarouselShowCase alloc 6113.86KB -> 5213.10KB,visuals 369 -> 326;nav 14 -> 4,progress 28 -> 1,transition 7 -> 0,repeated mean 基本持平
Cascader 本轮已完成 Cascader filter/multiple closed visual 41/25 -> 20;CascaderShowCase visuals 1250 -> 1169,repeated mean 141.81ms -> 133.27ms
CheckBox 本轮已完成 CheckBox 默认 unchecked visuals 12 -> 8,contentless unchecked 11 -> 6,CheckBoxShowCase visuals 420 -> 318,repeated alloc 6385.60KB -> 4629.80KB
Collapse 本轮已完成 Collapse CollapseShowCase repeated mean 119.31ms -> 100.18ms,visuals 616 -> 553;content motion 33 -> 1,addon presenter 33 -> 3
ComboBox 本轮已完成 ComboBox ComboBoxShowCase repeated mean 109.35ms -> 91.07ms,alloc 11384.83KB -> 9534.28KB,visuals 562 -> 497;默认 Button/IconButton 23 -> 0
DatePicker 本轮已完成 DatePicker closed route PickerHost 30 -> 0,visuals 1570 -> 1540,alloc 30959.16KB -> 29762.89KB,长样本 repeated mean 174.77ms -> 154.21ms
Descriptions 本轮已完成 Descriptions DescriptionsShowCase repeated mean 75.84ms -> 68.64ms,visuals 579 -> 571;GalleryShape.Batch8 25.139ms/root -> 24.486ms/root;修复 binding/collection/window 订阅生命周期风险
Dialog / MessageBox 本轮已完成结构与生命周期优化 Dialog MessageBox closed Dialog/root 1 -> 0,ModalShowCase visuals 324 -> 317,Dialog runtime 14 -> 7;修复 RelayBind、mask binding、resizer 和 ButtonBox 父级生命周期风险,后续 MessageBox 细化见独立文档
Expander 本轮已完成 Expander closed content motion actor 按需创建;ExpanderShowCase cold mean 191.70ms -> 170.47ms,repeated mean 82.18ms -> 67.30ms,visuals 391 -> 360,MotionActor 16 -> 1
Empty 本轮已完成低风险修复 Empty 修复 IsDescriptionVisible=False、图片来源运行时互斥和 Svg.Source/Path 残留;EmptyShowCase repeated mean 21.90ms -> 21.32ms,alloc 2269.73KB -> 2253.90KB,visuals 不变
FloatButton 本轮已完成 FloatButton closed trigger group visual/root 41 -> 14;FloatButtonShowCase repeated mean 126.71ms -> 110.81ms,visuals 949 -> 752,alloc 14447.92KB -> 12182.94KB
Form 本轮已完成低风险结构与生命周期优化 Form Form.GalleryShape 92.094ms/item -> 89.364ms/item,visual/root 1544 -> 1508;FormShowCase visuals 6435 -> 6300,alloc 少 3.54%,页面 repeated 耗时基本持平
GroupBox 本轮已完成 GroupBox 默认无 HeaderIcon 不再创建 header icon presenter;GroupBox.GalleryShape visual/root 104 -> 96,GroupBoxShowCase visuals 151 -> 143,repeated mean 27.79ms -> 26.16ms
ImagePreviewer 本轮已完成 ImagePreviewer 单图关闭态不再提前创建完整预览 source list;ImagePreviewerShowCase cold mean 180.28ms -> 147.48ms,repeated mean 33.56ms -> 30.61ms
Input 本轮已完成结构优化 Input TextBox.Default visual/root 21 -> 13、KB/item 332.6 -> 236.7;TextArea.Default visual/root 24 -> 21;LineEditShowCase visuals 2307 -> 2284,repeated mean 基本持平
ListView 本轮已完成 ListView ListView.Grouped 3.619ms/item -> 1.759ms/item,FilterActive 3.421ms/item -> 1.841ms/item;ListShowCase repeated mean 80.72ms -> 77.34ms
MarqueeLabel / Alert 本轮已完成 MarqueeLabel Alert 默认路径不再创建隐藏 MarqueeLabel;AlertShowCase runtime MarqueeLabel 25 -> 1,visuals 585 -> 561,repeated mean 65.42ms -> 54.67ms
Mentions 本轮已完成 Mentions closed popup content 已按需创建;MentionsShowCase _candidateList 15 -> 0,repeated mean 110.05ms -> 106.95ms,alloc 10115.79KB -> 9326.47KB
Menu 本轮已完成 Menu closed leaf MenuItem visual/root 13 -> 9,KB/item 209.8 -> 122.1;MenuShowCase Menu-only phase repeated mean 91.16ms -> 89.10ms,严格 NavMenu shape 见 NavMenu 文档
NavMenu 本轮已完成 NavMenu 修复 prepared node binding 生命周期和默认路径遍历;MenuShowCase 严格完整形态 repeated mean 162.76ms -> 99.13ms,cold mean 416.22ms -> 351.72ms
Message 本轮已完成 Message WindowMessageManager 只在首次实际 show 时创建;timer/event/OnClose 生命周期已释放;MessageShowCase repeated mean 30.97ms -> 28.52ms,cold mean 109.07ms -> 98.86ms
MessageBox 本轮已完成 MessageBox 同生命周期 binding 改为 [!],loading skeleton 按需创建并验证释放;ModalShowCase repeated mean 34.53ms -> 32.11ms,P95 37.18ms -> 34.42ms
Notification 本轮已完成 Notification manager/card 生命周期补齐,manager/progress bar 按需创建;NotificationShowCase cold mean 176.82ms -> 155.20ms,repeated mean 37.46ms -> 29.13ms
NumericUpDown 本轮已完成 NumericUpDown 默认 right accessory 按需创建;NumberUpDownShowCase visuals 1351 -> 1269,Button/IconButton 90 -> 60,cold mean 480.45ms -> 427.73ms
OptionButtonGroup 本轮已完成 OptionButtonGroup 文本按钮默认不创建 IconPresenter/Wave;RadioButtonShowCase visuals 794 -> 689,repeated mean 100.85ms -> 84.72ms
Pagination 本轮已完成 Pagination 页码项 icon/content slot 按需创建;PaginationShowCase visuals 1262 -> 1065,IconPresenter 120 -> 51,repeated mean 168.92ms -> 131.76ms
PopupConfirm 本轮已完成 PopupConfirm popup 打开态 NoCancel container 2.865ms/item -> 1.634ms/item,Button 2 -> 1;PopupConfirmShowCase repeated mean 45.21ms -> 40.42ms
QRCode 本轮已完成 QRCode 默认 Active visual/root 19 -> 7,QRCodeShowCase repeated mean 125.12ms -> 91.58ms,visuals 436 -> 307
RadioButton 本轮已完成 RadioButton RadioIndicator wave 按需创建;RadioButtonShowCase visuals 689 -> 668,Wave 22 -> 1,repeated P95 184.13ms -> 164.47ms
Rate 本轮已完成 Rate Rate.GalleryShape 15.846ms/item -> 10.354ms/item;RateShowCase repeated mean 62.75ms -> 55.87ms,visuals 376 -> 331
Result 本轮已完成 Result 普通状态/错误码视觉按需创建;ResultShowCase repeated mean 74.01ms -> 67.19ms,Svg 8 -> 3,visuals 265 -> 257
ScrollViewer 本轮已完成基线与低风险正确性修复 ScrollViewer 修复 overlay host selector 与 motion owner;FloatButtonShowCase 页面级 timing 基本中性,后续优化需更强收益证明
Slider 本轮已完成 Slider 普通 Slider 不再预创建 PART_EndThumb;SliderShowCase repeated mean 46.31ms -> 33.78ms,visuals 111 -> 105
Splitter 本轮已完成 Gallery 实测 Splitter hidden collapse icon 不再构造/保留 PathIcon,lazy preview transform 复用;SplitterShowCase repeated mean 36.91ms -> 34.66ms,P95 51.79ms -> 40.43ms,alloc 5770.31KB -> 5659.40KB
Statistic 本轮已完成正确性与生命周期优化 Statistic generated Content ownership、StatisticCountUp.DataContext 清理、TimerStatistic attach-gated timer 释放;StatisticShowCase repeated alloc 7471.87KB -> 7228.74KB,visuals 387 -> 384
Timeline 本轮已完成结构与正确性修复 Timeline TimelineIndicator.Render Pen 缓存;修复 pending item 清空和默认/custom icon 显示;页面级 timing 未证明收益,pending spinner 正确显示带来 +2 visuals
TextBlock 本轮已完成 TextBlock HighlightableTextBlock 段级 Run 重写:Match.Medium 3.306ms→0.426ms (-87%)、355.8KB→44.0KB (-88%)、logical 56→4;SelectableTextBlock token binding+Cursor 移到 Theme Setter
Popup 本轮已完成 Popup Popup 4 条构造器 token binding 迁到 ControlTheme(fan-in 19 → ~76 条订阅消除 + Tier 1 §7 同优先级碰撞修复);构造路径 0.154ms→0.107ms (-31%)、23.4KB→21.9KB (-6%);ShadowsAwareContainer 影子 Border 延迟到 HasBoxShadow
Tag 本轮已完成 Tag AbstractTag.SetupDefaultCloseIcon 门控到 IsClosable=true;非 closable Tag 各 scenario 减少 ~2 KB/instance;Gallery 76 实例 × ~70 非 closable ≈ 140 KB 加载分配下降;closable 路径行为不变
Transfer 本轮已完成 Gallery 实测 Transfer TargetKeys membership lookup 改为每次刷新复用 HashSet,空 target panel 直接短路;TransferShowCase repeated mean 242.72ms -> 222.12ms,cold mean 855.88ms -> 768.42ms,visuals/logical 不变
TreeView 本轮已完成 Gallery 实测 TreeView NodeSwitcherButton 模板 5 个图标 presenter 收敛到 1 个;TreeViewShowCase visuals 2108 -> 1646、IconPresenter 332 -> 112、repeated mean 332.44ms -> 213.41ms、alloc 49964.64KB -> 33732.33KB
TreeSelect 本轮已完成 Gallery 实测 TreeSelect 共享 SelectHandle 三套 indicator 收敛到单 presenter;TreeSelectShowCase visuals 909 -> 858、IconPresenter 38 -> 21、repeated mean 124.72ms -> 108.95ms、alloc 19996.64KB -> 18118.79KB
TimePicker 本轮已完成 Gallery 实测 TimePicker InfoPickerInput closed presenter 延迟到首次打开;TimePickerShowCase cold mean 464.82ms -> 393.11ms,repeated mean 148.79ms -> 138.48ms
Upload 本轮已建立 baseline,未保留 runtime 改动 Upload UploadShowCase baseline:cold mean 351.77ms,repeated mean 87.48ms;3 个候选因 timing 无收益/退化已回滚,仅保留 GalleryPerformance 映射
Steps 本轮已完成结构正确性修复 Steps ConfigureItemsPanel 清理 stale ColumnDefinitions;StepsShowCase repeated timing 未证明收益,按 structural-only 记录
TabControl 本轮已完成 Gallery 实测 TabControl 默认无 icon/非 closable tab 不再创建隐藏 slot;TabControlShowCase visuals 1583 -> 1405,repeated mean 170.75ms -> 157.35ms
Tour 本轮已完成结构绑定优化 Tour TourStepsView 7 条同生命周期 RelayBind 改为 template-priority direct binding;TourShowCase repeated mean 65.81ms -> 61.91ms,visuals/logical 不变
Tooltip 本轮已完成(structural-only) Tooltip ToolTipService.StartShowTimer 复用 DispatcherTimer + method-group Tick handler,避免每次 hover-show 分配 timer + lambda 闭包;headless bench 不能触发 Show 流程,real-world hover-heavy 场景待 Gallery 实测
Separator 本轮已完成(structural-only) Separator AbstractSeparator.Render Pen 缓存(SKILL Cost Model 强制);headless bench 解析力 < 0.1 KB/instance 看不出,real-world 60fps render loop 才能放大

总列表

分类 控件/体系 状态 备注
Shared Primitive AddOnDecoratedBox Done 输入类控件共享视觉与 addon 体系
Shared Primitive Icon Done Phase 6 已完成;Material/IconPark 外部包已同步 generated metadata 与 transform literal;Provider cache 清理语义已补齐
Shared Primitive ScrollViewer Done ScrollViewer;补齐控件级 suite 和真实 FloatButtonShowCase 对比,落地 selector/motion 正确性修复,未证明稳定页面级性能提升
General Button Done loading/icon/wave 默认 slot 已按需创建;selector brush 状态保留在 XAML
General FloatButton Done FloatButton;closed trigger menu、badge canvas、separator layer 已按需创建,Gallery repeated mean 提升约 12.55%
General SplitButton Pending 已做 Button 联动 smoke;仍待独立基线
General Separator Pending 待建立基线
General ButtonSpinner Done ButtonSpinner;handle/presenter/outer addon 已按需创建,floatable 全局 input 订阅生命周期已验证
Layout FlexPanel Pending 待建立基线
Layout Grid Pending 待建立基线
Layout Space Done 已完成 Phase 0-7;CompactSpaceFiller 不再承担 wrapper,repeated timing 小幅改善,cold 仍需后续针对子控件/Gallery 拆解
Layout Splitter Done Splitter;hidden collapse icon 不再构造/保留 PathIcon,lazy preview transform 复用,SplitterShowCase repeated mean 提升约 6.10%,P95 提升约 21.93%
Navigation Breadcrumb Done (correctness + baseline) Breadcrumb;修复父级 separator 传播到 direct/generated inherited items;Gallery cold / P95 / alloc 有收益,repeated median 基本持平
Navigation ComboBox Done ComboBox;默认 host、popup content、handle IconButton 成本已按需/轻量化,Gallery repeated mean 提升约 16.72%
Navigation DropdownButton Pending 已做 Button 联动 smoke;仍待独立基线
Navigation Menu Done Menu;闭合 leaf/toggle/submenu Popup 重内容已按需创建,ContextMenu window 订阅释放已补齐,Gallery repeated mean 小幅提升
Navigation NavMenu Done NavMenu;container binding 生命周期、全局关闭订阅按需化、默认路径完整显示和 Gallery 严格 ready 口径已完成
Navigation Pagination Done Pagination;页码项和只读 SimplePagination 隐藏成本已按需化,PaginationShowCase repeated mean 提升约 21.10%
Navigation Steps Done (structural-only) Steps;修复 ConfigureItemsPanel 未清理 ColumnDefinitions 的结构问题,未证明稳定页面级性能收益
Navigation TabControl Done TabControl;默认 tab item hidden slot 按需化,TabControlShowCase repeated mean 提升约 7.85%,visuals 1583 -> 1405
Data Entry AutoComplete Done 关闭态 CandidateList/PopupFrame 已按需创建;Gallery repeated mean 提升约 25.79%
Data Entry Cascader Done Cascader;closed popup、filter input、multiple tags、filter list、checkbox/loading slot 已按需创建,Gallery repeated mean 小幅下降
Data Entry CheckBox Done CheckBox;unchecked/contentless 默认路径不再创建 wave、Icon mark、tristate mark;CheckBoxShowCase visuals 420 -> 318,alloc 6385.60KB -> 4629.80KB
Data Entry ColorPicker Pending 待建立基线
Data Entry DatePicker Done DatePicker;关闭态 popup content、默认 accessory host、Window.Deactivated 订阅已按需化
Data Entry TimePicker Done TimePicker;InfoPickerInput closed presenter 延迟到首次打开,真实 TimePickerShowCase repeated mean 提升约 6.93%
Data Entry Form Done Form;已完成低风险结构与生命周期优化,控件级小幅提升,Gallery 结构/分配下降,页面 repeated timing 基本持平
Data Entry Input Done Input;TextBox/TextArea 默认 accessory、count、resize 成本按需化;真实 LineEditShowCase 结构/分配下降,repeated timing 基本持平
Data Entry LineEdit Done 已完成控件级优化与 Gallery 实测
Data Entry Mentions Done Mentions;closed popup content 与 OptionsSource cache 已按需化,Gallery repeated mean 小幅改善,alloc 下降约 7.80%
Data Entry NumberUpDown / NumericUpDown Done NumericUpDown;默认 clear/accessory 按需创建,NumberUpDownShowCase cold mean 提升约 10.97%,repeated mean 提升约 3.97%
Data Entry OptionButtonGroup Done OptionButtonGroup;默认隐藏 icon/wave 成本已按需化,RadioButtonShowCase repeated mean 提升约 15.99%
Data Entry RadioButton Done RadioButton;RadioIndicator wave 默认不预创建,RadioButtonShowCase visuals 689 -> 668,Wave 22 -> 1
Data Entry Rate Done Rate;默认星形、焦点虚线框和全局 input 订阅成本已收敛,RateShowCase repeated mean 提升约 10.96%
Data Entry Select Done Select;SelectShowCase repeated mean 220.31ms -> 143.76ms,alloc 28027.36KB -> 23904.61KB;closed popup/list/accessory hidden cost 已按需化
Data Entry Slider Done Slider;普通 Slider 的 PART_EndThumb 按需创建,marks cache 与全局 input 订阅已收敛,Gallery repeated mean 提升约 27.06%
Data Entry ToggleSwitch Pending 待建立基线
Data Entry TreeSelect Done TreeSelect;共享 SelectHandle 单 presenter 化,真实 TreeSelectShowCase repeated mean 提升约 12.64%,visuals 909 -> 858
Data Entry Transfer Done Transfer;TargetKeys lookup 复用 HashSet,空 target panel 直接短路,TransferShowCase repeated mean 提升约 8.49%,cold mean 提升约 10.22%
Data Entry Upload Baseline only Upload;已建立 Gallery baseline,3 个候选无收益/退化已回滚,仅保留测量入口
Data Display Avatar Done Avatar;互斥内容 presenter 与折叠 flyout 已按需创建,Gallery repeated mean 提升约 23.13%
Data Display Badge Done Badge;hidden zero 和无文本 DotBadge 已按需创建,Gallery visual/alloc 下降,导航 timing 收益有限
Data Display Calendar Done Calendar;按当前 DisplayMode 延迟填充 MonthView/YearView cells,控件级 Calendar.Default ms/item 提升约 24.63%,Year/Decade 初始模式约 48%,Gallery visuals 201 -> 189
Data Display Card Done Card;Header/Cover/Actions/Skeleton 已按需创建,Gallery repeated mean 提升约 35.14%
Data Display Carousel Done Carousel;nav/progress/PageTransition 已按需创建,真实 Gallery alloc 6113.86KB -> 5213.10KB,cold 164.35ms -> 149.05ms,repeated timing 基本持平
Data Display Collapse Done Collapse;addon、no-arrow、closed content 已按需创建,Gallery repeated mean 提升约 16.03%
Data Display Descriptions Done Descriptions;DescriptionsShowCase repeated mean 75.84ms -> 68.64ms,visuals 579 -> 571;binding/collection/window 订阅生命周期已补齐验证
Data Display DataGrid Pending 待建立基线
Data Display Expander Done Expander;closed content/addon/no-arrow slot 已按需创建,Gallery repeated mean 提升约 18.11%
Data Display Empty Done Empty;低风险正确性修复与热路径收敛,Gallery repeated mean 小幅改善,visual tree 不变
Data Display GroupBox Done GroupBox;header icon presenter 已按需创建,GroupBoxShowCase visuals 151 -> 143,repeated mean 27.79ms -> 26.16ms
Data Display ImagePreviewer Done ImagePreviewer;单图关闭态只加载可见封面,完整弹窗 source list 延迟到首次打开;Gallery repeated mean 提升约 8.79%
Data Display InfoFlyout Pending 待建立基线
Data Display List Done ListView;group/filter refresh 与分页枚举成本已收敛,真实 ListShowCase repeated mean 提升约 4.19%
Data Display QRCode Done QRCode;PNG encode/decode 已移除,icon/status hidden tree 按需创建,QRCodeShowCase repeated mean 提升约 26.81%
Data Display Segmented Done Segmented;无 icon item 的隐藏 IconPresenter 已按需化,真实 SegmentedShowCase repeated mean 提升约 18.51%
Data Display Statistic Done Statistic;generated content ownership、CountUp DataContext 清理、TimerStatistic timer 生命周期验证;StatisticShowCase repeated alloc 下降约 3.25%,visuals 387 -> 384
Data Display Tag Pending 待建立基线
Data Display TextBlock Done (structural) TextBlock;HighlightableTextBlock 段级 Run(N 字符 → ≤ 1 + 2K Run),SelectableTextBlock token binding + Cursor 移到 Theme Setter;微基准待 perf 哈纳斯恢复后补
Data Display Timeline Done (structural + correctness) Timeline;TimelineIndicator.Render Pen 缓存,pending item 生命周期和默认/custom icon 显示已验证;页面级 timing 未证明收益
Data Display TreeView Done TreeView;NodeSwitcherButton 单 presenter 化,真实 TreeViewShowCase repeated mean 提升约 35.80%,visuals 2108 -> 1646
Data Display Tooltip Pending 待建立基线
Data Display Tour Done (structural) Tour;TourStepsView 同生命周期 RelayBind 改为 template-priority direct binding,页面加载小幅改善,popup 打开场景待专项 harness
Feedback Alert Done MarqueeLabel;默认非 marquee Alert 不再承担隐藏 MarqueeLabel 成本,AlertShowCase repeated mean 提升约 16.43%
Feedback Drawer Done Drawer;关闭态 OpenOn/SizeChanged 已按需化,detach/open/close 生命周期已补齐验证;Gallery repeated mean 24.24ms -> 22.87ms
Feedback Message Done Message;manager 按需创建,auto-close timer、MessageClosed、OnClose 生命周期已补齐,Gallery repeated mean 提升约 7.91%
Feedback MessageBox Done MessageBox;同生命周期 binding 改为 [!],loading skeleton 按需创建,状态/释放验证已补齐
Feedback Modal Done Dialog;closed MessageBox 内部 Dialog 已按需创建,mask/resizer 生命周期已验证;Gallery 结构和分配下降,repeated timing 未证明提升
Feedback Notification Done Notification;manager/card 生命周期补齐,7 个 Gallery manager 与 progress bar 按需创建,Gallery repeated mean 提升约 22.24%
Feedback PopupConfirm Done PopupConfirm;cancel/content slot 已按需创建,detach/reattach 与事件释放已验证,Gallery repeated mean 提升约 10.60%
Feedback ProgressBar Done ProgressBar;status icon 按需创建,真实 ProgressBarShowCase repeated mean 154.17ms -> 111.26ms,runtime visuals 1389 -> 977
Feedback Result Done Result;状态 icon presenter 与错误码 Svg 互斥按需创建,ResultShowCase repeated mean 提升约 9.21%
Feedback Skeleton Pending 待建立基线
Feedback Spin Pending 待建立基线
Feedback Watermark Pending 待建立基线
Tooling AtomUI.Performance harness Done (recovered) Avalonia 12 迁移期间失同步的 62+ 错误已清干净(保留 stub AddOnDecoratedBoxPerfProbe、排除待重写的 AccessoryLifecycleVerification.cs / EffectiveBrushVerification.cs,3 处状态验证打 TODO)。--suite textblock / --suite popup / --verify-textblock-states 可用,T0.1 / T0.2 微基准已回填。

状态定义

状态 含义
Pending 尚未建立控件级性能基线
Plan 已形成分析方案,尚未建立控件级性能基线
Baseline 已有基线,尚未实施优化
In Progress 正在优化或验证
Done 已有基线、优化记录和最终数据