如何使用消息框输出调试信息

本文关键字:调试 信息 输出 何使用 消息 | 更新日期: 2023-09-27 17:57:09

我正在使用MessageBox尝试进行一些手动调试,这就是我想出的全部内容,我应该如何使其工作?

private void DisplayMessageBoxText()
        {
            MessageBox.Show("Alert Message");
        }

如何使用消息框输出调试信息

您可以使用 writeline 写入调试控制台:

System.Diagnostics.Debug.WriteLine("Alert message");

或者,您可以使用以下方法疯狂地抛出警报框:

System.Windows.Browser.HtmlPage.Window.Alert("Alert Message"); 

> 我经常使用 http://www.gurock.com/smartinspect/,它非常适合记录各种更改,可以抓取各种对象、状态等。 好处是你可以把它留在你的代码中,如果你以后遇到问题,只需在侦听器中连接,看看发生了什么。

抛出消息框也可能会中断程序,因为你正在更改焦点,具体取决于错误在应用中发生的位置,例如,如果是焦点/键类型问题,然后,随着取消焦点/重新焦点类型消息的处理,你可能会发生更多代码。

还有一些

其他选项可用于从应用程序获取调试信息:

Debug.Assert( - some condition - , "A condition failed");

如果提供的条件不为 true,则 Debug.Assert 将显示一个消息框。

另一个有用的工具是跟踪点,它们类似于断点,但不会破坏应用程序,而是将信息写入调试控制台。

我不

认为你在追求这个?

MessageBox.Show("Error details here");

只是万一这是你不知道的事情......

也许你正在寻找的答案更像是这些?..

    private void DebugObject(object obj)
    {
        string printString = "";
        foreach (System.Reflection.PropertyInfo pi in obj.GetType().GetProperties())
        {
            printString += pi.Name + " : " + pi.GetValue(obj, new object[0]) + "'n" ;
        }
        MessageBox.Show(printString);
    }

此函数会将所有成员及其值打印到消息框中。 如果您需要任何额外的信息,请点击以下链接。

(感谢 Jon Skeet 在这里的回应:C# VS 2005:如何在运行时获取类的公共成员列表?