查找运行时窗口的源代码(实现)

时间:2013-04-23 11:22:11

标签: .net winforms form-control

当我们使用Web应用程序时,我们可以通过查看视图源来查看当前页面详细信息。在我的情况下,我需要识别运行Windows应用程序时显示的当前表单。有没有办法找到这个。我的源代码有很多种形式,有些形式是动态生成的。

2 个答案:

答案 0 :(得分:3)

如果要在.NET应用程序中查找当前活动的Form实例,请使用Form.ActiveForm静态属性。

要获取表单名称,请使用Form.ActiveForm.Text。要获取表单类型,请使用Form.ActiveForm.GetType()

要有合适的位置来评估上述内容,您可以在应用程序开头(Main)的某处放置以下代码:

new System.Threading.Timer(
    delegate
    {
        Type activeFormType =
            (Form.ActiveForm != null) ? Form.ActiveForm.GetType() : null;
        Type breakpointHere = activeFormType;
    },
    null, 0, 10000);

然后运行您的应用程序,打开您要检查的表单。切换到VS并在第string breakpointHere ...行放置断点。切换回应用程序并等待计时器触发,调试器在断点处停止。然后检查activeFormType的值。

答案 1 :(得分:0)

使用 Hawkeye

Hawkeye是一个免费的实用程序 它就像一个动态属性网格,可以挂钩到任何windowsform应用程序。一旦挂钩到应用程序,它将显示属性,字段,类型,方法......

当您将其挂钩到表单时,您将看到表单名称(对象类型)