我正在使用Xamarin表单,并且需要根据用户是否登录来禁用用作上下文菜单的Master页面。我同时拥有MasterDetail页面作为单独的XAML页面。

  <MasterDetailPage.Master>
    <view:MenuPage/>
  </MasterDetailPage.Master>

  <MasterDetailPage.Detail>
    <view:MainViewPage
      x:Name="MainView"/>
  </MasterDetailPage.Detail>

您可能已经猜到了,我试图在此处合并MVVM,因此我尝试了IsVisible页面的绑定(bind)可见性(IsEnabled)和启用(Master)属性,但是,当按导航按钮访问我的我的控件时,我仍然会得到不希望的黑色淡入菜单。相反,我需要完全吃完按钮按下 Action 。

最佳答案

无论何时与用户连接,您的页面都应该可见吗?
还是例如在应用程序的开头有登录页面?

如果没有两个连接的用户都可见的页面,则可以通过将登录页面或另一个页面定义为ContentPage来实现该页面。它将占用所有屏幕空间并隐藏navigationBar。
然后,在用户连接之后,您将页面称为MasterDetailPage,然后将获得您的navigationBar,...

不知道这是您要找的东西,但我希望我能为您提供帮助。

09-07 00:52