ReSharper 用于通用应用程序和 Windows Phone
与为 Silverlight 和 WPF 平台开发类似,为通用应用程序和 Windows Phone 开发涉及与两种类型的文件交互——定义用户界面的 XAML 文件,以及作为后台代码并定义应用程序中发生逻辑的 C# 文件。 ReSharper 不仅简化了单独编辑这些文件的过程,还提供了同时更改 XAML 和后台代码的功能。
基本的 XML 特定功能
首先值得指出的是,由于 ReSharper 支持 XML 和 XAML ,ReSharper 提供了许多用于编辑 XAML 文件的功能。 因此,当光标位于某个元素上时,您将看到以下 上下文操作:

让我们简要谈谈这些操作的作用:
移除标记并提升子项 删除标签本身,但其所有内容会取消缩进并提升到被删除标签的级别。
替换标记 允许您使用不同的元素更改标签的类型——例如,将
边框更改为my:SpecialBorder。替换所有标记 执行与上述相同的操作,不同之处在于
边框的所有内部定义也会被更改。 这意味着如果您在边框中有一个边框,最终会在my:SpecialBorder中得到一个my:SpecialBorder。
ReSharper 知道如何展开和折叠空元素。 一个闭合的元素提供了展开选项,以便您可以在那里添加一些子元素:

而展开的空标签可以被折叠:

还可以将属性提升为嵌套元素:

当然,也可以执行相反的操作:

除了上述上下文操作外,ReSharper 还允许您 重新排列 XML 元素和属性。 按住 Ctrl+Alt+Shift ,您可以按左右箭头键在元素内移动属性;按住相同的组合键并按上下箭头键可以在包含元素内上下移动您所在的整个元素(包括其属性和子元素):

文件结构
与普通代码文件类似,ReSharper 的 文件结构 窗口 Control+F11 能够显示 XAML 文件的结构。 您还可以通过此窗口导航到树中选择的元素。

资源
资源是 XAML 开发中的核心概念,ReSharper 可以帮助您直接在 XAML 代码中创建资源。 例如,如果您创建了一个包含(尚不存在的)资源的资源字典,ReSharper 将为您提供 从使用中生成此资源的选项 :

这里有两个选项:
创建类型 创建一个简单的 CLR 类型
创建 XAML 类型 创建一个自定义的 XAML 控件
无论您选择哪个选项,如果资源已在顶级元素中注册,它都会在正确的命名空间中创建。
除了创建资源之外,ReSharper 还提供了销毁资源的选项——例如,在资源未被使用的情况下:

就地重构与导航
与普通代码类似,ReSharper 的 就地重构功能 Control+Shift+R 也可用于 XAML。 例如,如果您在 XAML 中使用自定义控件类,您可以访问与在 .cs 文件中的类定义上相同的重构选项:

还值得注意的是,一些重构功能可用于特定于 XAML 的元素。 例如,您可以对静态资源键执行 重命名 操作:

同样,您可以使用 导航到 Control+Shift+G 菜单从特定符号进行导航:

还值得注意的是,重构和导航菜单也可以在 文件结构 窗口和解决方案资源管理器中使用。
实时模板
ReSharper 提供了以下特定于 XML 的 实时模板:
当然,您可以 定义您自己的 特定于 XML 的模板。 您甚至可以通过在 *.xaml 文件扩展名中指定 模板范围 来将它们限制为仅适用于 XAML 文件。