有没有一个WinForm控件检查器应用程序?

34

我正在寻找一种可以提供关于运行中 .NET WinForms 应用程序的交互式元数据的工具。

基本上,我希望能够将鼠标悬停在运行的 WinForms 应用程序上,并让检查器突出显示各种控件,使我能够检查诸如大小、位置、父级等属性。

我曾经在某个地方看到过这个功能,但是我搜索了所有相关内容都没有找到。

4个回答

47

我相信你正在寻找 Hawkeye。你也可以查看GitHub获取更新版本。


1
哇,Hawkeye 真的很酷。它不仅解决了我的“观察”问题,而且允许我实时地进行 UI 实验(更改属性等)并查看会发生什么。非常不错。 - Simon Gillbee
2
wfSpy 还允许您在运行时更改属性。 - cplotts
1
看起来很酷,但是当我将目标拖放到我的应用程序上时,出现“系统找不到指定的文件”的错误。在Hawkeye的网页上,联系链接导致404错误。 - Neil
Hawkeye已经开源,现在可以在Codeplex上找到:http://hawkeye.codeplex.com/ - voon
7
怎么使用呢?我有点糊涂。我把X拖到了我的应用程序中的一个控件上,现在Hawkeye显示“<target in different process. release selection to hook>”。 - Colonel Panic

10

这个绝对值得一提。它是一个查看整体层次结构的好工具。但Hawkeye真是太棒了。 - Simon Gillbee
我喜欢这样想:wfSpy非常易于使用,而Hawkeye则更加强大。如果需要的话,我通常先使用wfSpy,然后再使用大杀器(Hawkeye)。 - cplotts

4

尝试使用Nuget包:WinForm.Inspector.Tool

安装文档

  • 在您的项目中实例化Inspector。

    Inspector inspector = new Inspector();

  • 忽略特定控件,例如按钮。

    inspector.IgnoreTypes = new Type[] { typeof(Button) };

  • 跳过控件,例如不可见和禁用的控件。

    inspector.SkipChilds = GetChildAtPointSkip.Invisible | GetChildAtPointSkip.Disabled;

运行您的项目,并按下Ctrl + F8打开ControlViewer。

按住"Alt"并将鼠标移到控制器上以选择它们。

enter image description here


有独立版本吗? - T.Todua

3

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接