none
METRO 程序 如何获取当前活动页面 RRS feed

  • 问题

  • 我想在APP.cs中判断当前活动的页面,如何做到?


    maming 这是多么有趣的一件事情,如果这是说开发WIN8 APP的话

    2012年12月11日 8:37

答案

  • Hi,

    你可以使用:

    Debug.WriteLine(this.Frame.CurrentSourcePageType.ToString());

    来看到当前的Page。Windows.Current.Content只能够得到Frame,需要注意的是调用这个的时候页面必须构建完成,比如在Page中的Loaded事件中调用。

    Aaron
    MSDN Community Support | Feedback to us
    Develop and promote your apps in Windows Store
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.

    • 已标记为答案 maming123 2012年12月13日 3:18
    2012年12月12日 10:43
    版主
  • Window.Current.Content 是当前应用程序窗口的可视根,可为Page也可为Frame

    比如你要判断是否是MainPage.xaml对应的页面 就可以用Window.Current.Content is MainPage或 (Window.Current.Content as MainPage)==null  等方法判断。

    如果要调用MainPage中的显示对象,要么另建Public字段指向该控件。

    也可通过(Window.Current.Content as Page).FindName("控件名") 或(Window.Current.Content as Frame).FindName("控件名") 使用

    2012年12月13日 2:36

全部回复

  • 用Window.Current.Content 的类型判断。
    2012年12月12日 9:22
  • Hi,

    你可以使用:

    Debug.WriteLine(this.Frame.CurrentSourcePageType.ToString());

    来看到当前的Page。Windows.Current.Content只能够得到Frame,需要注意的是调用这个的时候页面必须构建完成,比如在Page中的Loaded事件中调用。

    Aaron
    MSDN Community Support | Feedback to us
    Develop and promote your apps in Windows Store
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.

    • 已标记为答案 maming123 2012年12月13日 3:18
    2012年12月12日 10:43
    版主
  • Hi,

    你可以使用:

    Debug.WriteLine(this.Frame.CurrentSourcePageType.ToString());

    来看到当前的Page。Windows.Current.Content只能够得到Frame,需要注意的是调用这个的时候页面必须构建完成,比如在Page中的Loaded事件中调用。

    Aaron
    MSDN Community Support | Feedback to us
    Develop and promote your apps in Windows Store
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.

    HI,

       我使用this.Frame.CurrentSourcePageType  在APP.CS中没有,要换成rootframe.CurrentSourcePageType.ToString()

       我得到这页面的名称,但我想得到这个页面的引用,如内面的控件,方法等,如何操作?


    maming 这是多么有趣的一件事情,如果这是说开发WIN8 APP的话

    2012年12月13日 1:26
  • Window.Current.Content 是当前应用程序窗口的可视根,可为Page也可为Frame

    比如你要判断是否是MainPage.xaml对应的页面 就可以用Window.Current.Content is MainPage或 (Window.Current.Content as MainPage)==null  等方法判断。

    如果要调用MainPage中的显示对象,要么另建Public字段指向该控件。

    也可通过(Window.Current.Content as Page).FindName("控件名") 或(Window.Current.Content as Frame).FindName("控件名") 使用

    2012年12月13日 2:36