扩展

Extension文件夹是专门用于存放扩展类的地方,本质上是把常用小操作做成 xxx.Extension,让控件代码更简洁、可复用。这个目录有 11 个扩展类,按作用大概分四类:

  • UI 树/元素操作
    • DependencyObjectExtension:取视觉/逻辑父节点
    • FrameworkElementExtensionr:获取“有效宽高”(Width/ActualWidth/DesiredSize 回退)
    • UIElementExtension:Show/Hide/Collapse 语义化封装
  • 对话框与 MVVM 协作
    • DialogExtension:给 Dialog 提供 GetResultAsync、初始化、取 ViewModel 的便利 API
  • XAML 本地化与标记扩展
    • LangExtension:MarkupExtension,让 XAML 中可以通过 key 动态取多语言文本,并处理 DataContext 延迟场景
  • 基础值/集合/几何/颜色等通用扩展
    • ValueExtension(Thickness 运算、判零/均匀)
    • 以及 StringExtension、EnumerableExtension、GeometryExtension、ColorExtension、ColLayout