2

ユニバーサル アプリと MVVM に素晴らしい Template10 を使用しています。
私がやろうとしているのは、Shell.xaml ファイルで宣言されたハンバーガー ボタンを別のビューから非表示にして表示することです。理想的な解決策は次のようなものです。何も言わない場合はハンバーガー ボタンを表示し、それ以外の場合はハンバーガー ボタンを非表示にします
。MainPage があり、リスト内の項目をクリックすると、 DetailsPage では、コンストラクターでメッセージを送信するか、ShellView がハンバーガー ボタンを非表示にするように通知するプロパティを設定します。それを行うためのベストプラクティスは何ですか?
メッセンジャーは可能性があるかもしれませんが、それが最善の解決策であるかどうかはわかりません..

4

2 に答える 2

4

Template10 を使用している場合は、Shell.xaml.cs に次のものが必要です。

  public static Shell Instance { get; set; }

        public static HamburgerMenu HamburgerMenu { get { return Instance.MyHamburgerMenu; } }

        public Shell()
        {
            Instance = this;
            this.InitializeComponent();
        }    

これにより、アプリのどこからでもコードを使用してシェル インスタンスにアクセスできます。

var h = Shell.HamburgerMenu;
  h.HamburgerButtonVisibility = MyVisibilityParam;

HamburgerButton の可視性にアクセスできます。ここの MyVisibilityparam は、Visibility.CollapsedまたはVisibility.Visible

于 2016-03-15T20:17:07.030 に答える
1

メッセンジャーはここにうまく収まると思います。他のビューから起動してボタンを更新します。

于 2016-03-09T09:10:03.323 に答える