如何查看/监视用户界面上的控件正在触发哪些事件

我正在使用C#中的winforms创建一个GUI,所有控件都有很多事件。 我想知道哪些事件被解雇以及何时被解雇。 一种方法是将调试语句放在每个事件处理程序上,但这需要太多的工作。 有没有办法在Visual Studio 2008/2010中执行此操作,还是有任何可以帮助的工具?

Managed Spy有可能记录所选控件的所有事件。 请参阅此文章 ,您可以在其中阅读此工具并下载它。

运行时流程 (由我开发)与监控filter“Module == System.Windows.Forms.dll && Function == On *”将显示所有winforms控件触发的事件。

如果您不介意某些信息过载,可以使用Spy ++(\ Common7 \ Tools \ Spyxx.exe)查看应用程序生成的所有Windows消息。

一些窗口消息或多或少直接转换为.net事件……

您可以编写一个订阅这些事件的日志记录类,并将事件和时间戳写入日志文件。

它仍然需要您编写一些代码,但它与您的生产代码无关,不应该以任何方式影响它。