Visual Studio 2022子项目缺失Windows Forms窗体模板如何修复
.Net5 子项目缺失Windows Forms窗体模板修复方案
问题根因
devenv /InstallTemplates 仅能修复全局VS模板损坏问题,对当前场景无效。子项目不显示Form模板的核心原因是:子项目未开启Windows Forms支持,VS不会自动引入Microsoft.WindowsDesktop.App.WindowsForms框架依赖,会直接判定该项目不属于WinForms类型项目,自动过滤窗体相关模板。这也是启动项目、新建项目可正常显示模板,仅问题子项目模板缺失的原因。
修复步骤
方法1:直接编辑项目文件(效率最高)
- 右键选中出问题的子项目,点击「编辑项目文件」,打开后缀为
.csproj的项目配置文件 - 在第一个
<PropertyGroup>节点内,保留原有的目标框架、输出类型等配置,新增以下两项配置:
<UseWindowsForms>true</UseWindowsForms> <DisableWinFormsDesigner>false</DisableWinFormsDesigner>
- 保存文件后右键项目选择「重新加载项目」,如果依赖列表中仍未出现
Microsoft.WindowsDesktop.App.WindowsForms,就在配置文件末尾的</Project>闭合标签前,新增手动框架引用配置:
<ItemGroup> <FrameworkReference Include="Microsoft.WindowsDesktop.App.WindowsForms" /> </ItemGroup>
- 再次保存、重载项目后,打开添加新项面板即可看到「Form (Windows Forms)」模板。
方法2:可视化配置(无需手动编辑配置文件)
- 右键出问题的子项目,选择「属性」打开项目配置页
- 进入「应用程序」选项卡,下拉找到「Windows 桌面应用程序设置」板块
- 勾选「启用 Windows 窗体」选项,等待VS自动完成框架依赖还原
- 重启Visual Studio后模板即可正常加载。
注意事项
- 只要类库/子项目需要存放WinForms窗体、自定义用户控件,就必须开启
UseWindowsForms配置,否则即使手动把窗体文件拷贝到项目目录下,窗体设计器也无法正常加载。 - 新建.Net5 WinForms项目时VS会自动写入上述配置,存量类库项目、手动迁移的项目很容易遗漏该配置,触发模板缺失问题。
内容的提问来源于stack exchange,提问作者rrirower
相关产品推荐
相关产品推荐

