1

我正在开发 Wp7 应用程序。这里我使用 uriMapper 根据条件将用户引导到起始页面。

条件是

如果他已经注册,他应该直接去mypage2.xaml 如果他没有注册,那么他应该去mypage1.xaml

所以为了解决这个问题,我在 app.xaml 中使用了 UriMapper

    <uriMapper:UriMapper x:Name="mapper">
        <uriMapper:UriMapping Uri="/InermediatePage.xaml" />
    </uriMapper:UriMapper>

InermediatePage.xaml 只是一个中间页面,什么都不做。

我在 app.xaml.cs 的构造函数中的代码是 LoadActivePage();

 private void LoadActivePage()
    {
        UriMapper mapper = Resources["mapper"] as UriMapper;
        RootFrame.UriMapper = mapper;

        if(ifNotRegistered)
        {
            mapper.UriMappings[0].MappedUri= new Uri("/mypage1.xaml",UriKind.Relative);
        }
        else
        {
            mapper.UriMappings[0].MappedUri= new Uri("/mypage2.xaml",UriKind.Relative);
        }
    }

现在的问题是当我调试时..它工作正常。

但是,当我的应用程序被墓碑化并在模拟器或设备中重新启动应用程序时,它会显示 Inermediatepage.xaml 而不是显示 mypage1.xaml 或 mypage2.xaml

4

1 回答 1

1

您是否查看过 App.xaml.cs 中的激活事件?您可能需要向此事件处理程序添加代码。

于 2012-04-10T08:31:10.517 回答