在Windows Phone 8中,我不断收到System.WIndows.Markup.XamlParseException

时间:2013-01-02 06:43:03

标签: windows-phone-7 windows-phone windows-phone-8

我收到的错误消息是

  

System.Windows.ni.dll中出现'System.Windows.Markup.XamlParseException'类型的第一次机会异常

调用堆栈追溯到这段代码。

  

 public MainPage()
        {
            **InitializeComponent();**
            this.Init();

            // Set the data context of the listbox control to the sample data
            DataContext = App.ViewModel;
            this.Loaded += new RoutedEventHandler(MainPage_Loaded);


        }

InitializeComponent()行上的错误。

public void InitializeComponent() {
        if (_contentLoaded) {
            return;
        }
        _contentLoaded = true;
        System.Windows.Application.LoadComponent(this, new System.Uri("/App;component/MainPage.xaml", System.UriKind.Relative));
        this.LayoutRoot = ((System.Windows.Controls.Grid)(this.FindName("LayoutRoot")));
        this.SSIDTextBox = ((System.Windows.Controls.TextBox)(this.FindName("SSIDTextBox")));
        this.PasswordTextBox = ((System.Windows.Controls.TextBox)(this.FindName("PasswordTextBox")));
        this.Auth_ListPicker = ((Microsoft.Phone.Controls.ListPicker)(this.FindName("Auth_ListPicker")));
        this.SaveButton = ((System.Windows.Controls.Button)(this.FindName("SaveButton")));
        this.GenerateButton = ((System.Windows.Controls.Button)(this.FindName("GenerateButton")));
        this.QRImage = ((System.Windows.Controls.Image)(this.FindName("QRImage")));
        this.Profiles= ((System.Windows.Controls.ListBox)(this.FindName("Profiles")));
    }
}

在将WP 7.1转换为WP8之前,我没有得到此异常。

任何帮助都将不胜感激。

更新: 我添加了整个异常消息,是否有助于查明问题?

  

'TaskHost.exe'(CLR C:\ windows \ system32 \ coreclr.dll:DefaultDomain):已加载'C:\ windows \ system32 \ mscorlib.ni.dll'。跳过加载符号。模块已经过优化,调试器选项“Just My Code”已启用。   'TaskHost.exe'(CLR C:\ windows \ system32 \ coreclr.dll:Silverlight AppDomain):已加载'C:\ windows \ system32 \ System.Windows.RuntimeHost.ni.dll'。跳过加载符号。模块已经过优化,调试器选项“Just My Code”已启用。   'TaskHost.exe'(CLR C:\ windows \ system32 \ coreclr.dll:Silverlight AppDomain):已加载'C:\ windows \ system32 \ System.Windows.ni.dll'。跳过加载符号。模块已经过优化,调试器选项“Just My Code”已启用。   'TaskHost.exe'(CLR C:\ windows \ system32 \ coreclr.dll:Silverlight AppDomain):加载'C:\ windows \ system32 \ System.Net.ni.dll'。跳过加载符号。模块已经过优化,调试器选项“Just My Code”已启用。   'TaskHost.exe'(CLR C:\ windows \ system32 \ coreclr.dll:Silverlight AppDomain):已加载'C:\ windows \ system32 \ System.ni.dll'。跳过加载符号。模块已经过优化,调试器选项“Just My Code”已启用。   'TaskHost.exe'(CLR C:\ windows \ system32 \ coreclr.dll:Silverlight AppDomain):已加载'C:\ windows \ system32 \ System.Xml.ni.dll'。跳过加载符号。模块已经过优化,调试器选项“Just My Code”已启用。   'TaskHost.exe'(CLR C:\ windows \ system32 \ coreclr.dll:Silverlight AppDomain):已加载'C:\ Data \ Programs {64003C1B-A4FD-41FF-A132-2B6C9FE8EDC9} \ Install \ WifiQR.DLL'。符号已加载。   'TaskHost.exe'(CLR C:\ windows \ system32 \ coreclr.dll:Silverlight AppDomain):已加载'C:\ windows \ system32 \ Microsoft.Phone.ni.dll'。跳过加载符号。模块已经过优化,调试器选项“Just My Code”已启用。   'TaskHost.exe'(CLR C:\ windows \ system32 \ coreclr.dll:Silverlight AppDomain):加载'C:\ windows \ system32 \ Microsoft.Phone.Interop.ni.dll'。跳过加载符号。模块已经过优化,调试器选项“Just My Code”已启用。   'TaskHost.exe'(CLR C:\ windows \ system32 \ coreclr.dll:Silverlight AppDomain):已加载'C:\ Data \ Programs {64003C1B-A4FD-41FF-A132-2B6C9FE8EDC9} \ Install \ Microsoft.Phone.Controls。 Toolkit.DLL”。无法找到或打开PDB文件。   'TaskHost.exe'(CLR C:\ windows \ system32 \ coreclr.dll:Silverlight AppDomain):已加载'C:\ Data \ Programs {64003C1B-A4FD-41FF-A132-2B6C9FE8EDC9} \ Install \ microsoft.phone.controls。 DLL”。无法找到或打开PDB文件。   'TaskHost.exe'(CLR C:\ windows \ system32 \ coreclr.dll:Silverlight AppDomain):已加载'C:\ windows \ system32 \ System.Core.ni.dll'。跳过加载符号。模块已经过优化,调试器选项“Just My Code”已启用。   System.Windows.ni.dll中出现'System.Windows.Markup.XamlParseException'类型的第一次机会异常

4 个答案:

答案 0 :(得分:11)

只需在清单文件中添加权限即可。

  1. 转到WMAppmanifest.xml
  2. 选择“Capabalities”标签
  3. 现在查看“ID_CAP_MAP”

答案 1 :(得分:8)

发现问题! 我能够通过以下方式找到有关例外的更多信息:

  1. 调试 - >例外
  2. 按添加并输入“System.Windows.Markup.XamlParseException”并选择公共语言运行时例外
  3. 再次运行,它将精确定位导致异常的确切行号。
  4. 原来这是一个简单的拼写错误。

答案 2 :(得分:0)

我遇到了类似的问题,发现重新添加点击事件修复了它。

当我从另一个xaml页面复制xaml时发生了。

答案 3 :(得分:0)

在WP8-Update之后,VS Express中的应用程序的Strg + Alt + F7得到了帮助。