c# - Xamarin.Forms:独立于平台的应用程序菜单
问题描述
我正在编写一个 Xamarin.Forms 桌面应用程序,我最终希望以 MacOS 和 Windows 为目标。Xamarin.Forms 是否具有任何可用于构建应用程序菜单的独立于平台的机制(即您可以找到“文件”、“编辑”、“视图”等的机制;并且它出现在顶部的 MacOS 菜单栏中屏幕)?我发现最多的是Xamarin.Forms.Menu
andXamarin.Forms.MenuItem
类,但我不清楚它们实际做什么或如何使用它们。
解决方案
虽然,Xamain 表单不能直接用你说的方法来做。
包 Microsoft.Toolkit.Uwp.UI.Controls 5.0.0 与 netstandard2.0 >>(.NETStandard,Version=v2.0) 不兼容。
但是,将此 NuGet 包添加到 UWP,您可以尝试使用自定义ViewRenderer来执行此操作。
https://docs.microsoft.com/en-us/windows/communitytoolkit/controls/menu
像这样的代码:
<Grid>
<controls:Menu>
<controls:MenuItem Name="FileMenu"
controls:Menu.InputGestureText="Alt+F"
Header="File">
<MenuFlyoutSubItem Text="New">
<MenuFlyoutItem controls:Menu.InputGestureText="Ctrl+Shift+N"
Text="Project" />
<MenuFlyoutItem controls:Menu.InputGestureText="Ctrl+N"
Text="File" />
</MenuFlyoutSubItem>
</controls:MenuItem>
</controls:Menu>
</Grid>
最后的结果是这样的。
推荐阅读
- r - R CMD 检查我的电脑和 CRAN 自动检查
- java - 可附加容量限制
- c# - 如何通过linq动态添加where语句
- c++ - 在 if 语句中使用变量
- windows - 如何在 Windows 10 登录屏幕中添加自定义应用程序
- android - 批量膨胀具有相同ID的视图?
- windows - Windows 开始菜单中的快捷方式 - Matlab 可执行文件
- authentication - 针对 API 服务器的 kubernetes 身份验证
- powershell - PowerShell Get-Childitem 更改输出
- javascript - Mediaelementplayer不能在手机上运行