在Windows Phone 8模拟器中执行试验时出错

本文关键字:出错 执行 Windows Phone 模拟器 | 更新日期: 2023-09-27 17:51:18

这是错误信息。

System类型的异常。InvalidOperationException'在System.Windows.ni.dll中发生,但未在用户代码中处理附加信息:显示消息框错误。最常见的原因是在应用程序启动或激活时试图调用Show。在调用Show之前等待页面导航事件

它发生在应用程序启动时,并在第一个if语句中停止此函数,当试图显示消息框时。

代码来源=如何在Windows Phone应用程序中实现试用体验

    private void CheckLicense()
    {
        // this displays a dialog so that we can simulate trial mode being on or off. 
#if DEBUG
        string message = "Press 'OK' to simulate trial mode. Press 'Cancel' to run the application in normal mode.";
        if (MessageBox.Show(message, "Debug Trial",
             MessageBoxButton.OKCancel) == MessageBoxResult.OK)
        {
            _isTrial = true;
        }
        else
        {
            _isTrial = false;
        }
#else
        _isTrial = _licenseInfo.IsTrial();
#endif
    }

在Windows Phone 8模拟器中执行试验时出错

由于错误提示,无法在第一页导航栏前显示消息框。

MSDN有一个特定于Windows Phone 8试用体验的示例。它是由Windows Phone团队编写的,在初始化代码中没有任何消息框。

我也有同样的问题。这是解决方案。你需要把你的消息框放在里面(Deployment.Current.Dispatcher.BeginInvoke)例如:

Deployment.Current.Dispatcher.BeginInvoke(() =>
    {
        MessageBox.Show(message, title, MessageBoxButton.OK);
    });