You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Visual Studio 2017构建UWP应用报错:无法找到指定XAML类型

解决UWP构建时找不到XamlCompositionBrushBase的问题

首先,咱们先拆解下这个错误的核心原因:Windows.UI.Xaml.Media.XamlCompositionBrushBase这个类是**Windows 10 Creators Update(版本15063)**的SDK才新增的类型,而你当前依赖的14393版本SDK里根本没有这个类,再加上平台版本设置不匹配,就出现了各种报错。结合你已经尝试过的操作,给你几个针对性的解决方向:

1. 调整项目的平台版本配置

右键你的UWP项目 → 打开「属性」→ 切换到「应用程序」标签页:

  • 如果项目不需要兼容14393及更早版本,直接把目标平台版本和最低平台版本都设置为15063或更高(比如17763、19041等你已安装的SDK版本)
  • 要是必须兼容14393,那不能直接用XamlCompositionBrushBase,得做版本适配:比如用条件编译判断系统版本,低版本替换成传统Brush实现,或者用反射动态创建这个类(不过这种方式比较繁琐)

2. 修复Windows SDK安装

有时候VS的SDK可能安装不完整或损坏:

  • 打开Visual Studio安装器,找到你的VS2017实例,点击「修改」
  • 在「单个组件」里找到「Windows 10 SDK(15063)」或更高版本,确保勾选后点击「修改」进行修复安装
  • 安装完成后,手动删除项目根目录的.vs文件夹、bin和obj文件夹,再重新打开项目清理重建

3. 检查项目文件的.targets引用路径

项目可能错误引用了旧版本的SDK目标文件:

  • 右键项目 → 「卸载项目」,再右键卸载后的项目 → 「编辑项目文件」(.csproj或.vbproj)
  • 查找包含Microsoft.Windows.UI.Xaml.Common.targets的行,确认路径指向的是正确版本的SDK,比如:
    <Import Project="$(MSBuildProgramFiles32)\Windows Kits\10\bin\10.0.15063.0\Xaml\Microsoft.Windows.UI.Xaml.Common.targets" />
    
  • 如果路径里的版本号是14393,改成你已安装的更高版本,保存后重新加载项目构建

4. 用新项目排查配置问题

如果以上都没效果,试试创建一个全新的UWP项目:

  • 设置新项目的目标和最低平台版本为15063+,确认能正常构建
  • 逐步把现有项目的代码、资源复制到新项目里,每次复制后构建一次,排查是不是某个文件或配置导致的问题

内容的提问来源于stack exchange,提问作者Archerofyail

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.22 09:30:45