必须安装“.NET 桌面开发”工作负载,否则VS中看不到WPF Application模板、无法新建项目且编译失败;需勾选.NET 10.0 SDK、.NET桌面开发工具,慎选带(.NET Framework)后缀的旧模板。

必须装 .NET 桌面开发工作负载,否则新建不了 WPF 项目,也编译不过
Visual Studio 安装时要勾选的关键组件
不装对的组件,连 WPF Application 模板都看不到。2026 年最新稳定版(如 VS 2022 或 VS 2026)安装过程中,必须确保以下项被勾选:
- “.NET 桌面开发” 工作负载(这是核心,不是可选)
- 右侧“安装详细信息”里,确认勾选了:
.NET SDK(推荐 .NET 10.0 LTS)、.NET 桌面开发工具 - 如果要用 WebView2 或调用 WinRT API(比如通知、文件选取器),还得额外勾选“Windows 10/11 SDK”和“C++ 通用 Windows 平台工具”(即使你写 C#,底层依赖也需此)
新建项目时框架和模板选错会直接埋坑
VS 启动后搜 wpf,会出现多个模板,容易点错:
Visual Studio 18.8.1 官方固定版本安装引导程序,当前条目使用微软发布历史中的 Professional Web Installer,适合旧项目兼容、环境回退、复现特定构建链和排查版本差异等场景。
- ✅ 正确:选择
WPF Application(下方标注 “.NET” 或 “.NET 10.0”) - ❌ 错误:选
WPF Application (.NET Framework)—— 这是旧框架,不支持 Windows App SDK、现代控件、WebView2等,且无法升级到 .NET 10 - 创建后检查
csproj文件第一行是否含TargetFramework值为net10.0-windows;若为net48或net472,说明模板选错了,建议删掉重来
项目建好后常被忽略的三项基础配置
哪怕模板选对了,缺这三项,后续加功能(比如 NuGet 包、XAML 设计器、热重载)也会报错或失效:
- 确保项目属性 → “应用程序” → “目标框架” 显示为
.NET 10.0,且“输出类型”是Windows 应用程序 - 右键项目 → “编辑项目文件”,确认
<UseWPF>true</UseWPF>存在(.NET 5+ 之后必需显式声明) - 若要用 Windows 运行时 API(例如
Windows.Storage),需在csproj中补上:<TargetPlatformVersion>10.0.22621.0</TargetPlatformVersion>(对应 Win11 22H2 SDK 版本)
最常被跳过的其实是第三步:很多人加完 Microsoft.WindowsAppSDK 包却编译失败,根本原因就是没设 TargetPlatformVersion,导致 MSBuild 找不到 WinRT 元数据 —— 这个值不匹配,连 InitializeComponent() 都会红波浪线。

















