C# wp 8.1中页面导航时的奇怪行为

C# wp 8.1中页面导航时的奇怪行为,c#,windows-phone-8,windows-phone-8.1,C#,Windows Phone 8,Windows Phone 8.1,我正在制作一个Wp 8.1应用程序 我有这个“读者”页面。其建造商为— public Reader() { this.InitializeComponent(); this.NavigationCacheMode = NavigationCacheMode.Enabled; initalizeTimers(); initAd(); } 而昂纳瓦格托 protected override void O

我正在制作一个Wp 8.1应用程序

我有这个“读者”页面。其建造商为—

    public Reader()
    {
        this.InitializeComponent();
        this.NavigationCacheMode = NavigationCacheMode.Enabled;
        initalizeTimers();
        initAd();
    }
而昂纳瓦格托

    protected override void OnNavigatedTo(NavigationEventArgs e)
    {
        HardwareButtons.BackPressed += Hardware_backPressedLocal;
        var x = (Tuple<int, string, Global.FileType>)e.Parameter;

        //load settings here
        loadColorSchemes();
        setStatusBarColor();

        if (e.NavigationMode == NavigationMode.Back)
        {
            readerVm.refreshWebView();
            return;
        }

        if (x != null)
        {
            initalizeReader(x);
        }
    }
受保护的覆盖无效OnNavigatedTo(NavigationEventArgs e)
{
HardwareButtons.BackPressed+=硬件\u BackPressed本地;
var x=(元组)e.参数;
//在此加载设置
loadColorSchemes();
setStatusBarColor();
if(e.NavigationMode==NavigationMode.Back)
{
readerVm.refreshWebView();
返回;
}
如果(x!=null)
{
初始化阅读器(x);
}
}
initializeReader()
是一种异步方法。页面前面有一个网格,用于显示wait消息,initializeReader方法隐藏该网格

问题:

点击按钮调用
Frame.Navigate()
方法进入读卡器页面时,有时读卡器页面加载等待网格,等待网格在一段时间后隐藏(预期),有时UI冻结,然后读卡器页面加载等待网格已隐藏。用户界面冻结的时间为70-80%


你能告诉我这里出了什么问题吗?以及如何修复它?

尝试调用您的方法
initializeReader(x)从引发的页面加载事件
时。

另外,如果此方法调用某些异步函数,也可以异步调用它们。

initializeReader()方法的代码是什么?@eldardorzhiev成本最高的方法是FileIO.ReadTextAsync(),其他方法则从LocalSettings加载值。@aclab不重要,只要在这里输入代码即可。那会有帮助的。冻结很可能是由于僵局。理解发生了什么的一个好方法是在应用程序冻结时按下调试器的“暂停”按钮,然后检查调用堆栈以查看线程在等待什么