是否有可以监视打开窗口/ .net winforms的实用程序?

时间:2010-04-13 15:34:56

标签: c# .net vb.net process monitoring

这是一个普遍的问题,但我现在将解释我的具体需求:

我想找到一个框架类,使人们能够在设计时选择一个图像。我可以找到在运行时使用的编辑器 - 它是Drawing.Design.ImageEditor。但是,在设计时,会弹出一个不同的编辑器,允许用户从资源中选择一个图像。

我猜我可以运行某种程序,然后从属性网格中打开图像编辑器,看看创建了哪些新窗口/类?

由于

2 个答案:

答案 0 :(得分:1)

与您提到的功能类似的工具是Spy ++,您可以在开始菜单的Visual Studio文件夹中找到它(在子菜单Visual Studio Tools下)。

但是,如果我理解正确,我不认为你所谈论的设计时编辑器是用托管代码编写的,即使它是,我也很确定它不在框架中。它只是Visual Studio本身的一部分,据我所知,你无法掌握它的源代码。

答案 1 :(得分:1)

是的,您可以通过使用另一个Visual Studio实例查看正在使用的内容,并使用Tools + Attach to Process(托管)查看调用堆栈。它是Microsoft.VisualStudio.Windows.Forms.ResourcePickerDialog。这不是您可以在自己的代码中使用的东西,Visual Studio设计器程序集不可重新分发。它们也不会有用,它们会影响项目的设计时状态。

让你自己并不难,只需使用Reflection来迭代Properties.Resources的属性,找到那些具有Bitmap或Icon类型的属性。在ListView中显示它们以允许用户选择一个。在运行时添加资源不是一种选择。