WinUI3项目「添加新项」对话框找不到页面模板无法添加页面
WinUI3项目添加新项时找不到XAML页面模板的解决方法
按照以下优先级排查处理即可:
1. 先确认项目配置是否正确
- 检查当前项目类型:如果是单独创建的类库项目,默认不会加载WinUI项模板,需要右键项目选择「编辑项目文件」,在
<PropertyGroup>节点下添加<UseWinUI>true</UseWinUI>配置,保存后重新加载项目就能看到对应模板。 - 确认创建项目时选的是正规WinUI3模板:如果误建了UWP、WPF或者普通控制台项目,自然不会显示WinUI3页面模板,需要重新创建正确类型的项目。
2. 修复VS组件与模板异常
- 打开Visual Studio Installer,找到当前使用的VS版本,点击「修改」,在「工作负载」标签页确认勾选了「Windows 应用程序开发」板块,再切换到「单个组件」标签页,搜索确认勾选Windows App SDK C# 项模板、WinUI 3 项目和项模板两个组件,未勾选的话勾选后点击「修改」完成安装,重启VS再试。
- 如果上述组件已经全部勾选,大概率是模板安装出错或缓存损坏:先在Visual Studio Installer中对应版本点「更多」-「修复」,等修复完成重启VS;如果安装了预览版Windows App SDK,建议卸载预览版扩展后安装稳定版SDK,预览版经常出现模板匹配异常的问题。
3. 清理模板缓存
- 关闭所有运行中的VS实例,打开资源管理器在地址栏输入
%localappdata%\Microsoft\VisualStudio\回车,找到你当前VS版本对应的文件夹(比如VS2022对应17.0_xxxx命名的文件夹),删除里面的ItemTemplatesCache、ProjectTemplatesCache两个缓存文件夹,重启VS后会自动重新生成模板缓存,绝大多数缓存导致的模板丢失问题都能通过这个方法解决。
4. 临时绕过方案(无需修复模板直接添加页面)
如果不想花时间排查修复问题,可以手动创建页面文件,效果和模板生成的完全一致:
- 右键项目选择「添加」-「新建项」,选「代码文件」或者「类」,命名为你要的页面名,比如
MyPage.xaml.cs,再添加一个同名的xml文件命名为MyPage.xaml到项目同一目录下。 - 给xaml文件填入基础页面代码,注意把命名空间替换成你自己项目的默认命名空间:
<Page x:Class="你的项目命名空间.MyPage" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:local="using:你的项目命名空间" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="d" Background="{ThemeResource ApplicationPageBackgroundThemeBrush}"> <Grid> <!-- 页面内容写在这里 --> </Grid> </Page>
- 给对应的cs文件填入基础代码:
using Microsoft.UI.Xaml.Controls; namespace 你的项目命名空间 { public sealed partial class MyPage : Page { public MyPage() { this.InitializeComponent(); } } }
- 保存文件后VS会自动识别两个文件的关联关系,直接就能正常使用这个页面。
内容的提问来源于stack exchange,提问作者Ji Hoon Lee
相关产品推荐
相关产品推荐

