在UWP应用程序中导航

时间:2017-10-09 19:47:07

标签: uwp-xaml windows-template-studio

我使用VS2017和Windows Template Studio编写了一个UWP应用程序。我使用数据透视页面导航模板创建了多个页面。

以下是基本代码:

 public sealed partial class MainPage : Page, INotifyPropertyChanged
{
    public MainPage()
    {
        InitializeComponent();
    }

    protected override void OnNavigatedTo(NavigationEventArgs e)
    {

        ///Update controls here

        base.OnNavigatedTo(e);
    }

    public event PropertyChangedEventHandler PropertyChanged;

    private void Set<T>(ref T storage, T value, [CallerMemberName]string propertyName = null)
    {
        if (Equals(storage, value))
        {
            return;
        }

        storage = value;
        OnPropertyChanged(propertyName);
    }

    private void OnPropertyChanged(string propertyName) => PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
}

我已经添加了&#34; OnNavigatedTo&#34;方法,但它没有被调用。

我做错了什么?

1 个答案:

答案 0 :(得分:1)

使用数据透视表导航模板创建UWP项目时,它将在View文件夹中创建PivotPage。它将在PivotItem中的PivotPage中设置MainPage。

加载页面时调用OnNavigatedTo并成为父框架的当前源。切换页面时,父框架的当前源不会更改。

如果您在OnNavigatedTo中写下PivotPage,则会在您启动应用时调用它。您应该能够在Loaded中添加MainPage事件,它在构建页面并添加到对象树时发生,并且可以进行交互。