在Metro应用中,
在pageA中使用从pageA导航到pageB this.Frame.Navigate(typeof(pageB))
,在pageB中使用导航回this.Frame.GoBack()
。
一旦用户从pageB返回,将首先调用pageA的哪种方法?
我正在寻找类似onActivityResult
的东西,如在android。
答案 0 :(得分:2)
PageS的构造函数是第一个被解雇的方法
public sealed partial class PageA : App1.Common.LayoutAwarePage
{
public PageA()
{
//this is the first code to be fired
}
}
答案 1 :(得分:2)
为了使答案更加丰富多彩 - 当pageA具有NavigationCacheMode
的默认Disabled
时,构造函数将首先被调用,但在其他情况下它可能/将不会被调用如果你希望快速返回到那个页面,可能实际上值得将它设置为NavigationCacheMode至少暂时到Enabled
。
更可靠的办法是处理OnNavigatedTo并从那里获取导航参数对象。只是确保你没有传递比短字符串或其他基本类型更复杂的东西(byte,Int16,Uint16,Int32 / int,UInt32,Int64,UInt64,Single / float,Double,Char,Boolean,String ,Guid seem to be supported)因为否则当你想要在应用程序停用时保存状态并且你调用{{{}时,你将无法使用Frame
控件的内置状态保存机制3}}保存它(LayoutAwarePage
做到了。)
答案 2 :(得分:0)
我同意Theo Kouzelis,constructer是第一个被解雇的方法。 然后是onNavigatedTo();
但是,如果您希望在pageA上执行某些任务,具体取决于pageB上的结果,您必须创建一个保存值的静态对象。