使用OnNavigatedFrom方法當我們調用NavigationService.Navigate方法
OnNavigateFrom被調用。它具有一個NavigationEventArgs對象作爲參數,返回目標頁面的Content屬性,我們可以通過該屬性訪問目標頁面的屬性「DestinationPage.xaml.cs」
首先,在目標頁面「DestinationPage.xaml。 CS 「申報財產 」SomeProperty「:
public ComplexObject SomeProperty { get; set; }
現在,在 」MainPage.xaml.cs中「,覆蓋OnNavigatedFrom方法:
protected override void OnNavigatedFrom(NavigationEventArgs e)
{
// NavigationEventArgs returns destination page "DestinationPage"
DestinationPage dPage = e.Content as DestinationPage;
if (dPage != null)
{
// Change property of destination page
dPage.SomeProperty = new ComplexObject();
}
}
現在,拿在SomeProperty值」 DestinationPage。 xaml.cs「:
private void DestinationPage_Loaded(object sender, RoutedEventArgs e)
{
// This will display a the Name of you object (assuming it has a Name property)
MessageBox.Show(this.SomeProperty.Name);
}
謝謝。默認項目通過查詢字符串間接傳遞對象,查詢字符串然後從App.ViewModel訪問。這將工作,但我希望有一個更直接傳遞對象的更優雅的解決方案。 – samwize 2010-11-30 03:08:14