MAUI中传递参数到新页面推荐使用Shell路由配合QueryProperty特性,需在目标页属性标注[QueryProperty]、AppShell注册带占位符路由、调用GoToAsync传参;非Shell项目可用构造函数或公共属性传简单参数;复杂对象应仅传ID并通过服务查询。
MAUI 里传递参数到新页面,核心是用 Shell 或 NavigationPage 的导航机制配合路由参数(Route Parameters)或查询字符串(Query Attributes),不推荐直接传对象引用。
这是 MAUI 官方推荐、类型安全、支持深度链接的方式。关键三步:
[QueryProperty] 特性,并确保属性有 public set 访问器Routing.RegisterRoute("detail/{id}", typeof(DetailPage));
Shell.Current.GoToAsync("detail/123") 或带查询参数:Shell.Current.GoToAsync("detail/123?title=Hello&category=News");
对应页面示例:
[QueryProperty(nameof(ItemId), "id")]
[QueryProperty(nameof(Title), "title")]
public partial class DetailPage : ContentPage
{
public string ItemId { get; set; }
public string Title { get; set; }
// 属性被赋值后,OnAppearing 或构造函数后自动触发(注意:构造函数中还拿不到)
}
如果没用 Shell,而是基于 NavigationPage,可手动在跳转前设置参数:
var page = new DetailPage("123", "Hello");
await Navigation.PushAsync(page);var page = new DetailPage();
page.ItemId= "123";
page.Title = "Hello";
await Navigation.PushAsync(page);
⚠️ 注意:这种方式不支持 URI 导航和热重载调试,适合小型或原型项目。
MAUI 不支持跨页面序列化传递自定义对象(尤其含事件、BindingContext 等)。正确做法是:
IEnumerable 或注入的数据服务(如 IDataService)按 ID 查询真实数据WeakReferenceMessenger 发送消息(适合解耦但非导航主流程)用 [QueryProperty] 时,属性会在页面初始化后期被自动赋值,但不是在构造函数里。建议:
OnAppearing() 中使用参数加载数据(最常用)基本上就这些。关键是选对方式:Shell 项目优先走 Route + QueryProperty;简单跳转用构造函数;复杂数据靠 ID + 服务查。不复杂但容易忽略细节。
# go
# app
# ai
# 路由
# String
# 构造函数
# 字符串
# int
# public
# 访问器
# var
# 对象
# 事件
# typeof
# 跳转
# 不支持
# 到新
# 这是
# 是在
# 推荐使用
# 会在
# 自定义
# 三步
# 时用
相关文章:
如何通过二级域名建站提升品牌影响力?
微信小程序 五星评分(包括半颗星评分)实例代码
头像制作网站在线观看,除了站酷,还有哪些比较好的设计网站?
如何制作公司的网站链接,公司想做一个网站,一般需要花多少钱?
打鱼网站制作软件,波克捕鱼官方号怎么注册?
如何用PHP快速搭建高效网站?分步指南
公司网站制作费用多少,为公司建立一个网站需要哪些费用?
高端建站三要素:定制模板、企业官网与响应式设计优化
中山网站推广排名,中山信息港登录入口?
天津个人网站制作公司,天津网约车驾驶员从业资格证官网?
文字头像制作网站推荐软件,醒图能自动配文字吗?
建站之星官网登录失败?如何快速解决?
详解一款开源免费的.NET文档操作组件DocX(.NET组件介绍之一)
如何选择高性价比服务器搭建个人网站?
北京制作网站的公司,北京铁路集团官方网站?
智能起名网站制作软件有哪些,制作logo的软件?
建站主机空间推荐 高性价比配置与快速部署方案解析
常州自助建站费用包含哪些项目?
音响网站制作视频教程,隆霸音响官方网站?
用v-html解决Vue.js渲染中html标签不被解析的问题
专业公司网站制作公司,用什么语言做企业网站比较好?
建站之星代理平台如何选择最佳方案?
微信小程序制作网站有哪些,微信小程序需要做网站吗?
php8.4新语法match怎么用_php8.4match表达式替代switch【方法】
山东网站制作公司有哪些,山东大源集团官网?
如何用IIS7快速搭建并优化网站站点?
如何确保西部建站助手FTP传输的安全性?
做企业网站制作流程,企业网站制作基本流程有哪些?
如何通过VPS搭建网站快速盈利?
如何注册花生壳免费域名并搭建个人网站?
学校建站服务器如何选型才能满足性能需求?
建站VPS配置与SEO优化指南:关键词排名提升策略
建站主机选购指南:核心配置优化与品牌推荐方案
如何通过虚拟主机空间快速建站?
宝塔建站无法访问?如何排查配置与端口问题?
如何用y主机助手快速搭建网站?
如何选择高效稳定的ISP建站解决方案?
佛山企业网站制作公司有哪些,沟通100网上服务官网?
如何在阿里云部署织梦网站?
小自动建站系统:AI智能生成+拖拽模板,多端适配一键搭建
建站之星如何保障用户数据免受黑客入侵?
官网建站费用明细查询_企业建站套餐价格及收费标准指南
建站一年半SEO优化实战指南:核心词挖掘与长尾流量提升策略
北京网页设计制作网站有哪些,继续教育自动播放怎么设置?
如何快速生成高效建站系统源代码?
广州网站建站公司选择指南:建站流程与SEO优化关键词解析
较简单的网站制作软件有哪些,手机版网页制作用什么软件?
如何在IIS中新建站点并配置端口与物理路径?
c++怎么使用类型萃取type_traits_c++ 模板元编程类型判断【方法】
网站设计制作公司地址,网站建设比较好的公司都有哪些?
*请认真填写需求信息,我们会在24小时内与您取得联系。