Window Phone 7:頁面導航

     在Window Phone開發當中,用NavigationService來控制頁面導航,如下代碼:

this.NavigationService.Navigate(new Uri("/SecondPage.xaml?name=js",UriKind.Relative));


     讓我們來分析一下:Navigate是用於導航的函數

                                         Uri就是類似於網頁中網址,包含了頁面的地址信息

                                         "/SecondPage.xaml?name=js"地址是什麼意思呢?讓我們重點關注一下:

                                                          /SecondPage.xaml:就跟Uri第二個參數想對應的,表示頁面的相對地址

                                                         ?name=js:表示這地址在傳遞的時候帶一個值,關鍵字爲:name,值爲:js

    在這裏順便提一下,是不是跟網頁的URL很相似,沒錯,WP7的頁面就是基於Web的基礎上開發出來的。相對於android的開發,相當省事!

 

      好,既然頁面跳轉的時候傳值了,那麼我們如何在目標頁面上獲取到這個值呢?看如下代碼:

 protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e)
        {
            base.OnNavigatedTo(e);
            if (NavigationContext.QueryString.ContainsKey("name"))
            {
                textBox1.Text = NavigationContext.QueryString["name"];
            }
        }

      從上面的代碼來看,在目標頁面上有Navigation相對應的一些函數,我們可以在這個重寫的方法中添加上面的代碼,就可以獲取到【name】的值了      在這也介紹一個這個重寫的函數:【OnNavigatedTo】,也就是【navigate to me】的意思:從另外一個頁面跳轉到當前頁面!當然還有一個相對應的函數:

  protected override void OnNavigatedFrom(System.Windows.Navigation.NavigationEventArgs e)
        {
            base.OnNavigatedFrom(e);
        }

      【OnNavigatedFrom】,這表示【navigate from me】:從當前頁面跳轉到另外一個頁面!
  

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章