加载页面后立即Windows手机导航

时间:2012-08-20 10:04:33

标签: c# windows-phone-7 isolatedstorage navigationservice

我有2页。(MainPage.xaml,second.xaml) MainPage.xaml是登录页面。在这个页面我发送登录名和密码,并收到结果。我将它们(结果)保存在Isolate Storage中并导航到second.xaml页面; 当我下次启动此应用程序时,我从Isolate Storage中提取数据,我想立即导航second.xaml,但我不知道如何

我尝试写

public MainPage()
    {
        InitializeComponent();

       //function for Isolate storage
        InitializeSettings();
        NavigationService.Navigate(new Uri("/Conversation.xaml", UriKind.Relative));
    }

但它不起作用) 我知道我无法使用与MainPage()构造函数关联的导航代码。当然,我可能会做简单的按钮,但我希​​望快速导航

我认为可能与App.xaml方法有关

private void Application_Launching(object sender, LaunchingEventArgs e)

例如,写我的方法

        //function for Isolate storage
        InitializeSettings();

有导航吗?(导航在这个例子中不起作用)

private void Application_Launching(object sender, LaunchingEventArgs e)
{
InitializeSettings();
 NavigationService.Navigate(new Uri("/Conversation.xaml", UriKind.Relative));
}

我可以使用导航,所以直接进入second.xaml页面,而不完全加载MainPage.xaml(可能没有MainPage.xaml)

2 个答案:

答案 0 :(得分:2)

你可以像Rana Tallal那样说。

或者你可以用代码写出来:

public MainPage()
{
    InitializeComponent();

    Loaded += (s, e) =>
    {
        InitializeSettings();

        // Some login-password check condition
        if (_login && _password)
            NavigationService.Navigate(new Uri("/Conversation.xaml",
                                               UriKind.Relative));
    }
}

答案 1 :(得分:1)

好吧创建一个新函数......并在其中执行您希望它进行导航的检查,如果检查正确,则调用导航服务navigationservice.navigate(....)代码。 现在,您需要告诉程序在主页完全加载时调用此函数。要在其末尾的标签内的主页的xml中执行此操作,请写入loaded =“function_name” 现在,当加载页面时,将调用此函数。如果登录信息存在于隔离存储中,则将调用导航服务,否则将显示主页。

确保将(对象发送者,RoutedEventArgs e)放在函数参数中(因为它是一个事件处理程序)。