MAUI怎么在Shell导航中隐藏某个页面 MAUI路由配置


.NET MAUI Shell中“隐藏页面”指不显示在Flyout或TabBar中但可通过URI导航,需仅注册路由而不放入可视化容器;可动态设IsVisible控制显隐,并用N*igating事件拦截非法跳转。

maui怎么在shell导航中隐藏某个页面 maui路由配置

在 .NET MAUI Shell 导航中,**“隐藏某个页面”通常指不让该页面出现在抽屉菜单(Flyout)或标签栏(TabBar)中,但依然能通过 URI 导航跳转过去**——比如详情页、编辑页、登录后跳转页等非主入口页面。这不是真正“禁用”,而是**路由可见性控制**,靠 Shell 的路由注册方式和 UI 结构配置实现。

只注册路由,不放入 FlyoutItem 或 TabBar

Shell 页面是否显示在导航 UI 中,取决于它是否被包含在 FlyoutItemTabBarTab 这些可视化容器里。只要不把页面放进这些结构,它就不会出现在菜单或底部标签中,但仍可通过 GoToAsync 访问。

  • ✅ 正确做法:在 AppShell.xaml 中只给需要展示的页面配 ShellContent,其他页面仅注册路由
  • ❌ 错误做法:把所有页面都塞进 FlyoutItem,再用代码隐藏(无效且破坏结构)

示例:只让 cats/dogs 出现在菜单,monkeys 页面可跳转但不显示


  
    
      
      
    

  

  

然后在 AppShell.xaml.cs 中注册路由:

Routing.RegisterRoute("monkeys", typeof(MonkeysPage));

用 ShellContent 设置 IsVisible="False"

如果某页面已放在 FlyoutItemTab 中,但想临时隐藏(比如权限控制),可以用 IsVisible 属性动态控制其可见性。

Boomy Boomy

AI音乐生成工具,创建生成音乐,与世界分享.

Boomy 368 查看详情 Boomy
  • IsVisible="False" 会让该项从 Flyout 或 TabBar 中完全消失(不只是变灰)
  • 需在代码中绑定或设置,XAML 中写死不灵活,推荐运行时控制

例如在 AppShell.xaml.cs 构造函数或 OnN*igated 中:

var monkeysItem = this.FlyoutItems.OfType()
  .FirstOrDefault(f => f.Route == "monkeys");
if (monkeysItem != null)
  monkeysItem.IsVisible = User.HasPermission("view-monkeys");

避免被路由匹配到的“伪隐藏”技巧

有些页面你希望彻底屏蔽外部访问(比如未登录时禁止跳转),光靠 UI 隐藏不够,还需拦截导航:

  • 订阅 Shell.N*igating 事件,在跳转前判断目标路由和当前状态
  • 调用 e.Cancel = true 可中断导航,并可跳转到登录页
  • 适合做权限校验,不是 UI 隐藏,但常配合使用

示例:

Shell.Current.N*igating += (s, e) =>
{
  if (e.Target.Location.ToString().Contains("admin") && !User.IsAdmin)
  {
    e.Cancel = true;
    await Shell.Current.GoToAsync("//login");
  }
};

基本上就这些。关键记住:Shell 中页面“显隐”本质是结构决定的——放进 Flyout/Tab 就可见,只注册路由就不占 UI 位置。配合 IsVisibleN*igating 事件,就能做到精准控制。

以上就是MAUI怎么在Shell导航中隐藏某个页面 MAUI路由配置的详细内容,更多请关注其它相关文章!


# 可以用  # 勐腊网站推广公司电话  # 宁波网站建设订制公司  # 关键词迅速排名 黑猫  # 保山汝州全平台营销推广  # 网站优化效果对比推荐图  # 北海去哪找网站建设内容  # 宁海外贸网站优化  # 南宁房产关键词排名情况  # 十大家具营销推广成功  # 营销推广宣传模板  # 相关文章  # 而不  # go  # 就能  # 放在  # 见性  # 可通过  # 有哪些  # 出现在  # 跳转  # gate  # .net  # 路由  # ai  # app 


相关栏目: 【 Google疑问12 】 【 Facebook疑问10 】 【 优化推广96088 】 【 技术知识133117 】 【 IDC资讯59369 】 【 网络运营7196 】 【 IT资讯61894


相关推荐: 《kimi智能助手》制作ppt教程  Excel宏怎么删除_Excel中删除宏的详细操作流程  Go Template中优雅处理循环最后一项:自定义函数实践  优化长HTML属性值:SonarQube警告与实用策略  《环球网校》设置报考省市方法  c++如何掌握指针的核心用法_c++指针入门到精通指南  《小黑盒》删除历史浏览方法  iPhone14无法连接蓝牙设备如何解决  天天漫画2025最新入口 天天漫画永久有效登录入口  Dash应用多值文本输入处理与类型转换教程  优化Google Charts Gauge:在数据库无数据时显示默认值  如何在CSS中使用absolute实现登录弹窗居中_transform translate结合  Win11便笺在哪打开 Win11桌面便笺(Sticky Notes)使用方法【详解】  使用Google服务账号实现Google Drive API无缝集成与文件访问  《雅迪智行》用手机开锁方法  为什么XML解析器对大小写敏感? 理解XML规范中的大小写规则与最佳实践  小米倒班助手添加日历提醒  search中maxlength属性用法解析  WooCommerce 购物车:始终显示所有交叉销售商品  《via浏览器》强制缩放网页设置方法  《随手记》备份数据方法  小米civi如何设置锁屏时间  《咸鱼之王》新版孙坚技能解析  铁路12306买票怎么选双人铺 铁路12306卧铺分配规则说明  电脑桌面图标怎么变大变小_Windows个性化设置第一课【新手入门】  《崩坏:星穹铁道》3.6版本异相仲裁打法及配队推荐  c++如何链接Boost库_c++准标准库的集成与使用  《随手记》关闭首页消息推送方法  漫蛙app官方版手机正版入口-漫蛙漫画manwa在线漫画正版入口  如何用mysql实现客户反馈管理_mysql客户反馈数据库方法  FullCalendar自定义按钮样式定制指南  C#解析来自网络的XML流数据 实时错误处理与重试机制  PSD转AI文件的简单方法  银信通自动开通原因揭秘  消除网页顶部意外空白线:CSS布局常见问题与解决方案  Lar*el Eloquent:高效删除多对多关系中无关联子记录的父模型  oppo手机如何通过下拉通知栏截图_oppo手机通知栏快捷截图方法  招商淘客入门指南  Python实战:高效处理实时数据流中的最小/最大值  ExcelSCAN与LAMBDA如何创建自定义移动平均函数_SCAN实现任意窗口期移动平均计算  2025考研成绩查询时间入口分享  《鹿路通》退余额方法  Python高效统计字典嵌套列表值在目标列表中的出现次数  奥克斯空调不制热啥毛病_奥克斯空调不制热原因分析及解决技巧  Win10运行窗口在哪里打开 Win10调出运行命令框快捷键【技巧】  处理含命名空间的XML文件 Power Query中的高级技巧  六级准考证号怎么查_四六级准考证查询入口官网  Excel怎么用XLOOKUP函数实现双向查找_ExcelXLOOKUP替代VLOOKUP+HLOOKUP的高级用法  哔哩哔哩黑名单怎么查看  重返未来:1999卡戎全方位攻略 

 2025-12-20

了解您产品搜索量及市场趋势,制定营销计划

同行竞争及网站分析保障您的广告效果

点击免费数据支持

提交您的需求,1小时内享受我们的专业解答。

运城市盐湖区信雨科技有限公司


运城市盐湖区信雨科技有限公司

运城市盐湖区信雨科技有限公司是一家深耕海外推广领域十年的专业服务商,作为谷歌推广与Facebook广告全球合作伙伴,聚焦外贸企业出海痛点,以数字化营销为核心,提供一站式海外营销解决方案。公司凭借十年行业沉淀与平台官方资源加持,打破传统外贸获客壁垒,助力企业高效开拓全球市场,成为中小企业出海的可靠合作伙伴。

 8156699

 13765294890

 8156699@qq.com

Notice

We and selected third parties use cookies or similar technologies for technical purposes and, with your consent, for other purposes as specified in the cookie policy.
You can consent to the use of such technologies by closing this notice, by interacting with any link or button outside of this notice or by continuing to browse otherwise.