我正在尝试使菜单项的可见性以调试宏为条件。(它是一个调试菜单项,因此在发布版本中应该不可见。)我正在尝试遵循https://docs.microsoft.com/en-us/xamarin/xamarin-forms/xaml/xaml-basics/xaml-markup-extensions中的x:Static示例
我的AppShell类中包含以下内容:
namespace myappname
{
public partial class AppShell : Xamarin.Forms.Shell
{
#if DEBUG
public static readonly bool IsDebug = true;
#else
public static readonly bool IsDebug = false;
#endif在AppShell XAML中,我尝试了许多不同的
<FlyoutItem Title="Debug" Icon="DebugCheckedTests_16x.png" IsVisible="{x:Static local:bool.IsDebug}">但是,我尝试过的所有方法要么显示XFC0000无法解析"bool“类型的错误,要么显示其他错误。
我是不是大错特错了,或者bool不是x:Static的有效类型?我该如何对此进行编码?
发布于 2021-03-27 08:12:47
从文档中你想要实现的东西属于“一个公共静态字段”,因此你需要指定定义字段IsDebug的类,在文档示例中,类名是AppConstants,这不是"bool“类型的问题,你可以使用任何类型,只要它是属性所期望的类型。
xmlns:localRoot="clr-namespace:myappname"<FlyoutItem Title="Debug" Icon="DebugCheckedTests_16x.png"
IsVisible="{x:Static localRoot:AppShell.IsDebug}>https://stackoverflow.com/questions/66825787
复制相似问题