我有应用程序UWP
左屏幕是SplitView.Pane,其中包含列表内容。
右屏幕是SplitView.Content,包含内容的详细信息。
<SplitView.Content>
<Frame x:Name="frMainFrame">
<Frame.ContentTransitions>
<TransitionCollection>
<NavigationThemeTransition />
</TransitionCollection>
</Frame.ContentTransitions>
</Frame>
</SplitView.Content>
当我在SplitView.pane上单击标题时,frMainFrame将导航到参数为“ id”的ListThread页面
frMainFrame.Navigate(typeof(ListThread), id);
方法已处理后退按钮
private void OnBackRequested(object sender, BackRequestedEventArgs e)
{
if (frMainFrame.CanGoBack)
{
e.Handled = true;
frMainFrame.GoBack(new SuppressNavigationTransitionInfo());
}
else
{
DialogResult.AskToExitApp();
}
}
在ListThread页面上,
protected override void OnNavigatedTo(NavigationEventArgs e)
{
if (e.NavigationMode != NavigationMode.Back)
{
idBox = (int)e.Parameter;
Idpage = 1;
AnalyzeUrlBox();
AnalyzeHtml();
}
}
并在构造方法上设置NavigatitonCacheMode是必需的:
this.NavigationCacheMode = NavigationCacheMode.Required;
现在,
我单击左上角的“返回”按钮。
要求:frMainFrame导航显示具有参数ID = 2的ListThread,恢复导航之前的所有状态
实际:frMainFrame卡在参数ID = 3的ListThread上
我认为,问题出在NavigationCacheMode上。如何与Require一样执行?
谢谢!