【发布时间】:2018-11-02 09:42:23
【问题描述】:
我在这个设置上苦苦挣扎了几天,找到了一个解决方案,但我认为它不是应该的工作方式。
这是我的 xaml 页面设置:
<Page
...
<SplitView IsPaneOpen="True" DisplayMode="Inline" OpenPaneLength="300">
<SplitView.Pane>
<Grid>
<ToggleButton x:Name="Edit" IsEnabled="False" Checked="Edit_Checked" Unchecked="Edit_Unchecked"/>
</Grid>
</SplitView.Pane>
<Frame x:Name="RightFrame">
</Frame>
</SplitView>
</Page>
切换按钮代码:
private void Edit_Checked(object sender, RoutedEventArgs e)
{
RightFrame.Navigate(typeof(SubPage1));
}
private void Edit_Unchecked(object sender, RoutedEventArgs e)
{
RightFrame.Navigate(typeof(SubPage2));
}
所以基本上切换按钮会切换拆分视图的内容。 SubPages 只是空白页。问题是发生导航时应用程序崩溃。 在调用导航之前我已经注意到了:
RightFrame.Content = null;
Thread.Sleep(1000);
然后一切正常。所以我需要清除框架内容并等待它完成我猜。但我认为它应该自动完成。有人可以解释我在这里做错了什么以及应该如何做吗?
【问题讨论】: