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

.NET MAUI页面导航失败,遭遇4类编译错误求助

.NET MAUI页面导航相关错误解决方法

错误1:项目中不存在目标‘UpdateDesignTimeXaml’

  • 打开项目的.csproj文件,删除所有包含<Target Name="UpdateDesignTimeXaml">的节点
  • 确认项目文件顶部是<Project Sdk="Microsoft.NET.Sdk">,且包含<UseMaui>true</UseMaui>配置
  • 执行命令清理并重新生成项目:
    dotnet clean
    dotnet build
    

错误2:当前上下文中不存在名称‘InitializeComponent’

  • 核对XAML根节点的x:Class属性,必须和对应代码文件的命名空间+类名完全一致
  • 右键XAML文件→属性,将“生成操作”设置为MauiXaml
  • 删除项目目录下的bin和obj文件夹,重启Visual Studio后重新生成

错误3&4:命名空间‘Xamarin’不存在或找不到Forms类型

.NET MAUI已完全替代Xamarin.Forms,项目中需彻底移除Xamarin相关引用:

  • 替换所有代码文件的using指令:把using Xamarin.Forms;改为using Microsoft.Maui.Controls;
  • 修改XAML文件的命名空间声明:将xmlns="http://xamarin.com/schemas/2014/forms"替换为xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
  • 打开.csproj文件,删除所有含Xamarin.Forms的PackageReference节点,保留MAUI官方包引用(如<PackageReference Include="Microsoft.Maui.Controls" Version="$(MauiVersion)" />)
  • 清理NuGet缓存并重新还原包:
    dotnet nuget locals all --clear
    dotnet restore
    

额外检查项

  • 确认项目是标准.NET MAUI项目,而非Xamarin.Forms项目,查看项目属性的目标框架为.NET 6及以上
  • 页面导航代码使用MAUI原生机制,例如:
    await Navigation.PushAsync(new YourTargetPage());
    
    确保目标页面继承自Microsoft.Maui.Controls.ContentPage

内容的提问来源于stack exchange,提问作者Hüseyin KARABULUT

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.25 22:02:16