Xamarin.Forms:与平台无关的应用程序菜单

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Xamarin.Forms:与平台无关的应用程序菜单相关的知识,希望对你有一定的参考价值。

我正在编写一个Xamarin.Forms桌面应用程序,我最终想要定位MacOS和Windows。 Xamarin.Forms是否有任何独立于平台的机制,您可以使用它来构建应用程序菜单(即您找到“文件”,“编辑”,“查看”等的那个;并且它出现在顶部的MacOS菜单栏中屏幕)?我发现的最多的是Xamarin.Forms.MenuXamarin.Forms.MenuItem课程,但我不清楚他们实际做了什么或如何使用它们。

答案

虽然,Xamarin表单不能直接用你说的方法来做。

包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>

最终结果是这样的。

enter image description here

以上是关于Xamarin.Forms:与平台无关的应用程序菜单的主要内容,如果未能解决你的问题,请参考以下文章

Xamarin Forms Ui 项目(多平台)

Xamarin Forms 跨平台 BBCode 支持

Xamarin Forms Android .APK 与 .AAB(捆绑包)

Xamarin.Forms 仅在一个平台 (iOS) 上更改条目的占位符颜色和文本颜色

Visual Studio 2015 Professional上缺少Xamarin.Forms跨平台模板

Xamarin.Forms 的 iPad 模拟器