在做windows phone 開發的時候,會經常碰到頁面間之間的跳轉和傳遞數據,如果傳遞的值不多,只有兩三個,我們通常使用NavigationService.Navigate(new Uri("頁面名? Name=“”&ID=“ ”, UriKind.Relative));
要是碰到要傳遞多個值的時候,你就要寫很多很多的&符號連接。這樣不好看。
這裏我寫一種更好的方法---傳遞對象
思路
定義一個類,類裏面包含你所有需要傳遞的字段,然後在App.xaml.cs 申明這個類的對象,最後使用這個對象,
向這個對象中添加字段。
做法
第一步:
定義一個公共訪問類
public class GoodHelper
{
public string GoodName
{
get;
set;
}
public int GoodPrice
{
get;
set;
}
}
第二步:在App.xaml.cs 中申明這個類的對象
public static GoodHelper goodhelper { get; set; }
第三步:在頁面響應事件中向這個對象中的字段賦值
private void button1_click(object sender, System.Windows.Input.GestureEventArgs e)
{
App.goodhelper = new GoodHelper
{
GoodName="123",
GoodPrice="4576"
};
this.NavigationService.Navigate(new Uri("/market/DetailGood.xaml", UriKind.Relative));
}
最後在跳轉到的頁面中獲取對象的值
if (App.goodhelper != null)
{
string GoodName = App.goodhelper.GoodName;
int GoodPrice = App.goodhelper.GoodPrice;
}