博客
关于我
[WPF]总结一些我在开发WPF时常用的工具
阅读量:433 次
发布时间:2019-03-06

本文共 1830 字,大约阅读时间需要 6 分钟。

WPF 开发工具全解析:助力高效编码

作为一名从一万二千年前就开始写XAML的开发者,我亲历了无数工具的迭代,见证了它们如何帮助我更高效地进行WPF开发。以下是一些我常用的工具,希望能为WPF开发者提供实用的参考。

1. Visual Studio

Visual Studio 是每个开发者的必备工具,尤其是对于WPF开发者而言,它是完美的集成环境。尽管WPF在过去几年中没有大规模改进,但Visual Studio依然是WPF开发者的首选,因为它提供了丰富的功能和支持。以下是Visual Studio的一些实用功能:

  • 应用程序时间线探查器:帮助开发者分析XAML应用程序的性能问题,尤其是在UI框架布局、网络和磁盘请求等方面的性能瓶颈。
  • XAML热重载:允许开发者在应用程序运行时动态修改XAML代码,特别是在用户界面设计和复杂场景模拟方面非常实用。
  • 实时可视化树和属性资源管理器:实时查看正在运行的XAML代码的UI元素树和属性,帮助开发者更好地理解和调试代码。

此外,Visual Studio 2013 的支持对于回顾Silverlight Toolkit的代码非常有帮助,尽管现在已经过时,但它依然是不可或缺的开发环境。

2. Blend for Visual Studio

Blend 是专注于XAML设计的工具,虽然其独立版本的功能不及Visual Studio强大,但它在特定场景下依然不可或缺。Blend for Visual Studio 已经成为Visual Studio的一部分,通过插件形式提供更强大的XAML设计能力。以下是Blend的优势:

  • 设计VisualState和动画:对于WPF应用程序的交互体验至关重要。
  • 将文字和形状转换为路径:生成复杂的XAML形状。
  • 获取控件的ControlTemplate:了解和修改控件模板。

安装Visual Studio时,请确保选择安装Blend for Visual Studio选项,尤其是在需要反编译Blend SDK时。

3. ILSpy

ILSpy 是一款优秀的反编译工具,尤其适合处理BAML文件。对于那些源代码不可用的第三方控件库(如System.Windows.Controls.Ribbon.dll),ILSpy是唯一的选择。它比dnSpy和JustDecompile更高效,尤其是在反编译复杂库时表现优异。

4. Snoop

Snoop 是一个开源的WPF UI探索工具,功能强大且免费。它允许开发者浏览正在运行的WPF程序的可视树,修改属性,设置断点等。尽管Visual Studio现在也有类似功能,但Snoop依然是我最推荐的WPF工具之一。它还支持查看Triggers,帮助开发者理解控件行为。

5. DebugView

DebugView 是一个古老但依然实用的调试工具。它能够查看应用程序或驱动程序的输出日志,无论是本地机器还是远程机器。这对于调试复杂的应用程序非常有帮助,特别是在处理高级性能问题时。

6. ReSharper

ReSharper 是一款功能强大的C#开发工具,也对XAML提供了丰富的支持。它能够在XAML代码中提供智能感知提示,帮助开发者快速定位和修复错误。ReSharper 的XAML支持包括代码重构、导航和查找功能,极大地提高了开发效率。

7. Visual UI Automation Verify

Visual UI Automation Verify 是微软提供的一个自动化测试工具,属于Windows SDK的一部分。它能够帮助开发者测试UI自动化功能,尤其是在使用Microsoft UI Automation时非常实用。尽管它可能有些过时,但它依然是测试WPF UI组件的快速方式。

8. ResXManager

ResXManager 是一个Visual Studio扩展,用于管理resx资源文件。对于需要管理大量资源文件的项目来说,它是一个必不可少的工具。它提供了统一的资源管理界面,简化了资源文件的添加、删除和管理过程。

结语

这些工具为我提供了开发WPF应用程序的强大支持。虽然我也使用了一些在线工具(如VB.NET到C#的代码转换器、SVG到XAML转换器等),但它们通常是在需要时网上搜索和使用的。如果你想了解更多关于.NET开发的工具,可以参考相关文章。希望这些工具能为你的WPF开发之路提供帮助。

转载地址:http://otyuz.baihongyu.com/

你可能感兴趣的文章
Openlayers高级交互(1/20): 控制功能综合展示(版权、坐标显示、放缩、比例尺、测量等)
查看>>
Openlayers高级交互(10/20):绘制矩形,截取对应部分的地图并保存
查看>>
Openlayers高级交互(11/20):显示带箭头的线段轨迹,箭头居中
查看>>
Openlayers高级交互(12/20):利用高德逆地理编码,点击位置,显示坐标和地址
查看>>
Openlayers高级交互(13/20):选择左右两部分的地图内容,横向卷帘
查看>>
Openlayers高级交互(14/20):汽车移动轨迹动画(开始、暂停、结束)
查看>>
Openlayers高级交互(15/20):显示海量多边形,10ms加载完成
查看>>
Openlayers高级交互(16/20):两个多边形的交集、差集、并集处理
查看>>
Openlayers高级交互(17/20):通过坐标显示多边形,计算出最大幅宽
查看>>
Openlayers高级交互(18/20):根据feature,将图形适配到最可视化窗口
查看>>
Openlayers高级交互(19/20): 地图上点击某处,列表中显示对应位置
查看>>
Openlayers高级交互(2/20):清除所有图层的有效方法
查看>>
Openlayers高级交互(20/20):超级数据聚合,页面不再混乱
查看>>
Openlayers高级交互(3/20):动态添加 layer 到 layerGroup,并动态删除
查看>>
Openlayers高级交互(4/20):手绘多边形,导出KML文件,可以自定义name和style
查看>>
Openlayers高级交互(5/20):右键点击,获取该点下多个图层的feature信息
查看>>
Openlayers高级交互(6/20):绘制某点,判断它是否在一个电子围栏内
查看>>
Openlayers高级交互(7/20):点击某点弹出窗口,自动播放视频
查看>>
Openlayers高级交互(8/20):选取feature,平移feature
查看>>
Openlayers高级交互(9/20):编辑图形(放缩、平移、变形、旋转),停止编辑
查看>>