我正在为我的通用应用程序和 MVVM 使用出色的 Template10..
我想做的是从不同的 View 隐藏和显示 Shell.xaml 文件中声明的汉堡包按钮。理想的解决方案是这样的..如果我什么也不说,则显示汉堡包按钮,否则,隐藏汉堡包按钮..
假设我有 MainPage,当我单击列表中的某个项目时,我导航到 DetailsPage,在构造函数中我发送一条消息或设置一个属性,通知 ShellView 隐藏汉堡按钮。
这样做的最佳实践是什么?
恕我直言,Messenger 可能是一种可能性,但我不确定这是最好的解决方案。
最佳答案
如果您使用的是 Template10,那么在 Shell.xaml.cs 中您应该具有以下内容:
public static Shell Instance { get; set; }
public static HamburgerMenu HamburgerMenu { get { return Instance.MyHamburgerMenu; } }
public Shell()
{
Instance = this;
this.InitializeComponent();
}
这将允许您从应用程序的任何位置访问 shell 实例,并使用代码:
var h = Shell.HamburgerMenu;
h.HamburgerButtonVisibility = MyVisibilityParam;
您可以访问HamburgerButton的可见性,这里的MyVisibilityparam可以是Visibility.Collapsed
或Visibility.Visible
关于c# - 从不同 View 修改HamburgerButtonVisibility属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35876917/