MAUI页面导航主要通过MAUI Shell实现,需在AppShell.xaml中定义TabBar/FlyoutItem/ShellContent结构,注册路由(如Routing.RegisterRoute("detail", typeof(DetailPage))),用Shell.Current.GoToAsync()跳转并支持参数传递与生命周期响应。
MAUI 页面导航主要靠 MAUI Shell 实现,它提供统一、可配置的导航结构(如底部标签栏、抽屉菜单、路由系统),比手动管理页面堆栈更简洁稳定。
在 AppShell.xaml 中定义导航层级:顶部是 Shell 根节点,内部用 TabBar(底部标签)、FlyoutItem(侧边栏)或直接嵌套 ShellContent 指向页面。每个 ShellContent 的 ContentTemplate 绑定一个 Page,比如 HomePage 或 AboutPage。
Routing.RegisterRoute("detail", typeof(DetailPage));
ShellContent 生成默认路由,也可用 Route 属性自定义,如 Route="home"
new AppShell()
用 Shell.Current.GoToAsync() 触发导航,支持绝对路径(如 "//home" 回首页)和相对路径(如 "detail?id=123")。带参数时 URL 遵循 URI 查询格式,参数会自动注入目标页的 OnNavigatedTo() 方法或绑定到页面属性(需标记 [QueryProperty])。
await Shell.Current.GoToAsync("detail?id=42");
await Shell.Current.GoToAsync("..");
await Shell.Current.GoToAsync("//home");(双斜杠表示重置)IAsyncNavigationService 或直接访问 Shell.Current(注意线程安全)MAUI Shell 页面可通过重写 OnNavigatedTo() / OnNavigatedFrom() 获取导航事件。若需接收查询参数,添加 [QueryProperty] 特性到 public 属性上,框架会自动赋值。
[QueryProperty("ItemId", "id")] public string ItemId { get; set; }
OnNavigatedTo() 在页面即将显示时触发,适合刷新数据;OnNavigatedFrom() 适合保存状态或取消任务Shell 提供多个静态绑定属性控制外观,比如 Shell.BackgroundColor、Shell.ForegroundColor、Shell.TitleColor,可直接写在 AppShell.xaml 的 Shell 标签上,也支持绑定到资源或动态修改。
Shell.NavBarIsVisible="False" 写在对应 ShellContent 上Shell.TabBarIsVisible="False"
Icon 属性指定 FontImageSource,支持字体图标(如 Material Icons)基本上就这些。Shell 导航不复杂但容易忽略路由注册和参数绑定细节,写之前先搭好 AppShell 结构,再补跳转逻辑和生命周期处理,整体就很稳了。
# go
# app
# 栈
# ai
# 路由
# gate
# String
# 构造函数
# 堆
# public
# 线程
# 事件
# typeof
# 绑定
# 跳转
# 自定义
# 写在
# 多个
# 上一页
# 不需要
# 重写
# 每次都
# 可直接
相关文章:
建站之星后台密码遗忘?如何快速找回?
如何使用Golang安装API文档生成工具_快速生成接口文档
如何基于云服务器快速搭建网站及云盘系统?
Python lxml的etree和ElementTree有什么区别
如何自己制作一个网站链接,如何制作一个企业网站,建设网站的基本步骤有哪些?
一键制作网站软件下载安装,一键自动采集网页文档制作步骤?
微信网站制作公司有哪些,民生银行办理公司开户怎么在微信网页上查询进度?
香港服务器租用每月最低只需15元?
如何登录建站主机?访问步骤全解析
高性能网站服务器配置指南:安全稳定与高效建站核心方案
javascript基本数据类型及类型检测常用方法小结
python的本地网站制作,如何创建本地站点?
中山网站推广排名,中山信息港登录入口?
C++ static_cast和dynamic_cast区别_C++静态转换与动态类型安全转换
如何用花生壳三步快速搭建专属网站?
浅析上传头像示例及其注意事项
如何在企业微信快速生成手机电脑官网?
如何在建站之星绑定自定义域名?
兔展官网 在线制作,怎样制作微信请帖?
导航网站建站方案与优化指南:一站式高效搭建技巧解析
如何选择建站程序?包含哪些必备功能与类型?
如何在建站之星网店版论坛获取技术支持?
简易网站制作视频教程,使用记事本编写一个简单的网页html文件?
制作农业网站的软件,比较好的农业网站推荐一下?
建站之星会员如何解锁更多建站功能?
七夕网站制作视频,七夕大促活动怎么报名?
c# 在ASP.NET Core中管理和取消后台任务
网站设计制作公司地址,网站建设比较好的公司都有哪些?
如何在Tomcat中配置并部署网站项目?
建站之星北京办公室:智能建站系统与小程序生成方案解析
免费网站制作模板下载,除了易企秀之外还有什么H5平台可以制作H5长页面,最好是免费的?
香港服务器如何优化才能显著提升网站加载速度?
怎么将XML数据可视化 D3.js加载XML
如何选择网络建站服务器?高效建站必看指南
如何获取上海专业网站定制建站电话?
如何通过服务器快速搭建网站?完整步骤解析
linux top下的 minerd 木马清除方法
php能控制zigbee模块吗_php通过串口与cc2530 zigbee通信【介绍】
如何通过可视化优化提升建站效果?
早安海报制作网站推荐大全,企业早安海报怎么每天更换?
天津个人网站制作公司,天津网约车驾驶员从业资格证官网?
网站制作中优化长尾关键字挖掘的技巧,建一个视频网站需要多少钱?
微信小程序制作网站有哪些,微信小程序需要做网站吗?
如何通过二级域名建站提升品牌影响力?
浅谈Javascript中的Label语句
黑客如何通过漏洞一步步攻陷网站服务器?
如何高效完成独享虚拟主机建站?
高防网站服务器:DDoS防御与BGP线路的AI智能防护方案
如何用IIS7快速搭建并优化网站站点?
如何在IIS中配置站点IP、端口及主机头?
*请认真填写需求信息,我们会在24小时内与您取得联系。