【问题标题】:How to solve XAML parse errors?如何解决 XAML 解析错误?
【发布时间】:2012-11-26 15:37:58
【问题描述】:

我有一个具有 XAML UserControl 的 XAML (Windows 8 WinRT XAML) + C# 应用程序。在设计器中,我没有看到任何问题(没有红色下划线或类似内容)。该项目也编译没有任何错误。 当我运行应用程序时,应用程序在InitializeComponent() 中出现“XAML 解析错误”。我不知道如何调试此类问题。识别问题的步骤是什么?是的,XAML 用户控件或资源字典有问题,但是如何以结构化的方式处理这种错误?

[编辑]

好的,看来跟踪错误似乎是 WinRT 的正确方法。

顺便说一句。我发现 "my" 代码存在问题。

我的项目名为“Pegasus.Core”,在 Visual Studio 生成的 CalenderControl.g.i.cs 文件中,路径是这样的:"ms-appx:///Pegasus_Core/View/CalendarControl.xaml" -> 替换为“.”用“_”

The fix url

【问题讨论】:

  • 运行项目时输出窗口窗格中是否有任何警告或错误?
  • 我的后备方法是简单地开始剥离部分 XAML(特别是如果您有最后工作版本),直到它再次工作。在这一点上,添加位,直到它失败。它应该让您对罪魁祸首有一个很好的了解。
  • 把它拆开。删除所有内容并一次添加一点代码,直到找到导致它的原因。

标签: c# xaml windows-8 windows-runtime


【解决方案1】:

有时,如果您观察异常对象,异常会很好地提示您在哪一行失败。除此之外 - 删除和重新添加 XAML 片段是我在这种情况下经常做的事情。这只是平台中错误报告的一个限制,如果改进它会很好,但我们必须应对版本 1,直到下一个版本希望能改进一点。

【讨论】:

  • 谢谢。我只是希望有更好的方法。
【解决方案2】:

好的,我明白了。当您的 XAML 标记采用下一行时,会出现此异常。 更具体地查看您的 XAML 并检查是否有任何 UI 控件定义进入第二行? 例子 这不应该是这样。将所有内容移到一行中

【讨论】:

    猜你喜欢
    • 2021-06-23
    • 1970-01-01
    • 1970-01-01
    • 2014-01-09
    • 2016-02-28
    • 1970-01-01
    • 2013-06-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多