确定当前页面

时间:2013-07-17 14:58:14

标签: c# xaml visual-studio-2012 windows-store-apps

我有一个带有按钮的AppBar,该按钮启动一个弹出窗口,其中包含用户选择的列表,当一个被选中时,它会刷新页面,但在刷新某个页面之前,我需要它来执行任务。该代码在我的其他页面上运行良好。我只需要它来执行

await home.DatabaseTest();

在刷新页面之前,我只希望它在当前页面是Dashboard

时执行
private async void customerNamePopUp_Tapped_1(object sender, TappedRoutedEventArgs e)
    {
        //Gets the selected Customer Name and stores it in the Database.
        barCustomerName = db.selectCustomerNumberByCustomerName(customerNamePopUp.SelectedItem);
        rh.appDataHandler(customerNamePopUp.SelectedIndex, barCustomerName);
        if ("WHAT DO I PUT HERE TO TEST IF PAGE EQUALS DASHBOARD")
        {
            await home.DatabaseTest();
        }

        if (this.Frame != null)
        {
            //Refreshes Current Page
            Frame1.Navigate(Frame1.Content.GetType(), RootPage);                
        }
    }

请参阅await任务之前的循环注释,以了解我的要求。

谢谢

2 个答案:

答案 0 :(得分:0)

  1. 创建一个公共枚举,其中每个项目与每个页面相关联。
  2. 在App页面上创建创建的枚举的静态属性,该属性将表示当前页面。
  3. 在每个页面的OnNavigatedTo方法中,将app static属性设置为该页面的枚举。
  4. 在需要的地方检查当前页面的变量。

答案 1 :(得分:0)

我明白了。

if (Frame1.Content.GetType() == typeof(Dashboard))
        {
            await home.DatabaseTest();
        }