可以使用 Blend for Visual Studio 中的工具在应用中调试 XAML。 生成项目时,任何错误都会显示在 “结果 ”面板中。 双击错误以查找与错误相关的标记。 如果需要更多空间才能正常工作,可以通过按 F12 隐藏“结果”面板。
语法错误
如果 XAML 或代码隐藏文件不遵循语言的格式规则,则会出现语法错误。 错误的说明可帮助你了解如何修复此错误。 该列表还指定文件的名称和发生错误的行号。 XAML 错误列在“结果”面板中的“标记”选项卡上。
小窍门
XAML 是基于 XML 的标记语言,遵循 XML 语法规则。
XAML 语法错误的一些常见原因是:
关键字拼写错误或大写错误。
属性或文本字符串周围缺少引号。
XAML 元素缺少结束标记。
XAML 元素存在于不允许的位置。
有关常见 XAML 语法的详细信息,请参阅 基本 XAML 语法指南。
还可以在 Blend 中识别和解决简单的代码隐藏语法错误、编译错误和运行时错误。 但是,在 Visual Studio 中识别和解决代码隐藏错误可能更容易。
调试示例 XAML 代码
以下示例将引导你完成 Blend 中的简单 XAML 调试会话。
创建项目
在 Blend 中,打开 “文件” 菜单,然后单击“ 新建项目”。
在“ 新建项目 ”对话框中,项目类型的列表显示在左侧。 单击项目类型时,与之关联的项目模板将显示在右侧。
在项目类型列表中,单击 “Windows 通用”。
在项目模板列表中,单击“空白应用(通用 Windows)”。
在“ 名称 ”文本框中,键入
DebuggingSample。在 “位置” 文本框中,验证项目的位置。
在 语言 列表中,单击 “Visual C#”,然后单击“ 确定 ”以创建项目。
右键单击设计图面,然后单击查看源代码以切换到拆分视图。
单击代码右上角的 “复制” 链接,复制以下代码。
<Grid HorizontalAlignment="Left" Height="222" VerticalAlignment="Top> <Button content="Button" x:Mame="Home" HorizontalAlignment="Left" VerticalAlignment="Top"/> <Button Content="Button" HorizontalAlignment="Left" VerticalAlignment="Top" Margin="0,38,0,0"> <Button Content="Button" HorizontalAlignment="Left" VerticalAlignment="Top" Margin="0,75,0,0"/> <Button Content="Button" HorizontalAlignment="Left" VerticalAlignment="Top" Margin="0,112,0,0"/> <Button Content="Button" HorizontalAlignment="Left" VerticalAlignment="Top Margin="0,149,0,0"/> </Grid>找到默认 网格,并在开始和结束 网格 标记之间粘贴代码。 完成后,代码应如下所示:
<Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}"> <Grid HorizontalAlignment="Left" Height="222" VerticalAlignment="Top> <Button content="Button" x:Mame="Home" HorizontalAlignment="Left" VerticalAlignment="Top"/> <Button Content="Button" HorizontalAlignment="Left" VerticalAlignment="Top" Margin="0,38,0,0"> <Button Content="Button" HorizontalAlignment="Left" VerticalAlignment="Top" Margin="0,75,0,0"/> <Button Content="Button" HorizontalAlignment="Left" VerticalAlignment="Top" Margin="0,112,0,0"/> <Button Content="Button" HorizontalAlignment="Left" VerticalAlignment="Top Margin="0,149,0,0"/> </Grid> </Grid>按 Ctrl+Shift+B 生成项目。
此时会显示一条错误消息,提醒你无法生成项目,应用底部的“结果”面板列出了错误。
解决 XAML 错误
检测到 XAML 错误时,设计图面会显示项目包含无效标记的警报。 解决错误时, “结果 ”面板中的错误列表将更新。 解决所有错误后,将启用设计图面,并在设计图面上显示你的应用。
纠正 XAML 错误
双击列表中的第一个错误。 说明为“值'<'在属性中无效”。双击错误时,指针会查找代码中的相应位置。 上述
<Button属性有效,而不是错误消息中建议的属性。 如果查看前面的代码行,你会注意到属性Top的右引号缺失。 键入右引号。 请注意, “结果 ”面板中的错误列表会更新以反映所做的更改。双击描述“名称开头的‘0’无效”。
Margin="0,149,0,0"的格式看上去是正确的。 但是,请注意,颜色编码Margin与代码中的其他实例Margin不匹配。 由于前面名称/值对中缺少右引号(VerticalAlignment="Top),Margin="因此作为上述属性值的一部分进行读取,并且 0 作为名称/值对的开头进行读取。 为Top键入右引号。 “结果”面板中的错误列表会更新以反映所做的更改。双击剩余错误“结束 XML 标记‘Button’不匹配”。指针位于结束网格标记 (
</Grid>) 处,表明错误在Grid对象内。 请注意,第二个Button对象缺少结束标记。 添加关闭/后, “结果 ”面板列表将更新。 现在已解决这些初始错误,已识别另外两个错误。双击“成员‘内容’未被识别或无法访问”。
c中的content应为大写。 将小写“c”替换为大写“c”。双击“命名空间中
http://schemas.microsoft.com/winfx/2006/xaml不存在属性'Mame'”。“Mame”中的“M”应为“N”。将“M”替换为“N”。现在,可以分析 XAML,应用会显示在设计图面上。
按 Ctrl+Shift+B 生成项目,并确认没有剩余的错误。
在 Visual Studio 中调试
可以在 Visual Studio 中打开 Blend 项目,以便更轻松地调试应用中的代码。 若要在 Visual Studio 中打开 Blend 项目,请在 “项目 ”面板中右键单击该项目,然后单击 “在 Visual Studio 中编辑”。 在 Visual Studio 中完成调试会话后,按 Ctrl+Shift+S 保存所有更改,然后切换回 Blend。 系统将提示你重新加载项目。 单击“全选‘是’”以继续在 Blend 中工作。
有关调试应用的详细信息,请参阅 Visual Studio 中的调试 UWP 应用。
获取帮助
如果需要更多帮助调试 Blend 应用,可以搜索 UWP 应用社区论坛 以获取与问题相关的帖子或发布问题。