SuperAPI AI 工具集

dotnet-wpf

前端与建站

查看项目

更新于 10-16 09:31

技能介绍

用途:该技能面向在 .NET 上构建、维护和现代化 WPF 应用,触发场景包括处理 WPF UI、MVVM、绑定、命令与桌面现代化,将 WPF 从 .NET Framework 迁移到 .NET,以及向 WPF 应用集成较新的 Windows 能力。

主要能力:提供 MVVM 模式(视图保持简单、逻辑放入 ViewModel、使用命令)、显式数据绑定管理(选择正确绑定模式、运行时验证)、样式与模板组织(保持 UI 可组合、避免针对页面的临时修改)、线程处理(用 Dispatcher 更新 UI、长操作用 async/await)、运行时与设计器双重验证(XAML 组合错误往往只在运行时暴露)。

文档与参考:WPF 概览、数据绑定概览、MVVM Toolkit 介绍、样式与模板、迁移指南;另含 patterns.md(MVVM/绑定/命令模式与可复用架构)与 anti-patterns.md(常见错误与规避)。

使用方式:先确认仅限 Windows 范围;应用 MVVM,ViewModel 可使用 MVVM Toolkit 的 ObservableObject 与 [ObservableProperty]、[RelayCommand] 等特性;视图中用 {Binding RefreshCommand}、ItemsSource、SelectedItem 等绑定;可通过 Host.CreateDefaultBuilder 与 ConfigureServices 注册服务、ViewModel 和视图实现依赖注入;绑定模式含 OneTime、OneWay、TwoWay、OneWayToSource;可用 IValueConverter 与 IMultiValueConverter 做值转换;样式与模板放入 ResourceDictionary。

最佳实践与测试:.NET 5+ 可启用 x:CompileBindings="True";用 INotifyDataErrorInfo 配合 [Required]、[MinLength] 做校验;长生命周期订阅用 WeakEventManager;大集合用虚拟化;可冻结的 Freezable 尽量 Freeze;用 d:DataContext 提供设计时数据;测试用 xUnit 与 Moq 等验证命令与 ViewModel 行为。

限制:WPF 仅支持 Windows;资料未提供安装命令、收费、价格或平台细节;需注意避免把业务逻辑写入 code-behind、同步阻塞调用、手写 INotifyPropertyChanged 等反模式。