如何在Windows 8.1 Store应用程序中的设置弹出窗口中导航?

And*_*ord 1 settings flyout charms-bar windows-store-apps

我正在开发我的第一个Win 8.1 Store应用程序,并且在理解SettingsFlyout时遇到一些麻烦.

感谢为我的自定义设置创建Flyouts并将其添加到Settings Charm 的文档不是问题.

但是,我还没有找到如何在Flyout中导航.我想创建以下行为,因为它可以在邮件应用程序中看到:

  1. 从右侧滑动以显示魅力
  2. 单击"设置"以显示设置窗格
  3. 点击帐户显示"帐户列表弹出窗口"
  4. 在"帐户列表弹出窗口"上单击一个帐户显示其设置
  5. 弹出窗口中显示所选帐户的设置
  6. 使用"后退"按钮可以返回到帐户列表

步骤1-3没问题.但是我该如何管理其他步骤呢?如何在设置中更深入地导航一个控制杆并使用"后退"按钮再次上升?

小智 6

对于第5步,您可以执行类似的操作

var newFlyout = new AccountFlyout(id);
newFlyout.ShowIndependent();
Run Code Online (Sandbox Code Playgroud)

现在你完成了第5步.

在AccountFlyout.xaml.cs文件挂钩BackClick事件(在构造函数中),然后执行以下操作:

    void OnAccountFlyoutBackClick(object sender, BackClickEventArgs e)
    {
        // go back to the accounts list
        var listFlyout = new AccountsListFlyout();
        listFlyout.Show();
    }
Run Code Online (Sandbox Code Playgroud)

单击帐户上的"后退"按钮现在将"返回""帐户列表"弹出窗口.

是的,这不是非常'MVVM'友好(如果你在VM中执行导航,你必须知道Flyout,如果你在'代码隐藏'中做到这一点,你不是100%MVVM符合)但它得到了工作没有造成不必要的复杂性:)