C# 最简单的WPF/C调试方法,用于检查正在发生的事情

C# 最简单的WPF/C调试方法,用于检查正在发生的事情,c#,wpf,debugging,C#,Wpf,Debugging,使用C++/C,最简单的调试方法是使用cout/printf将正在发生的事情打印到控制台 WPF/C中的等效方法是什么 我考虑过使用MessageBox(),但WPF似乎不支持此函数。我也考虑过使用日志功能,但我怀疑它比printf/cout复杂 我可以在VisualStudio中使用断点,尽管如此,我仍然需要一些命令来设置断点 if (ABC()) { // What command should be here to set a break point? } 您可以使用Messag

使用C++/C,最简单的调试方法是使用cout/printf将正在发生的事情打印到控制台

WPF/C中的等效方法是什么

我考虑过使用MessageBox(),但WPF似乎不支持此函数。我也考虑过使用日志功能,但我怀疑它比printf/cout复杂

我可以在VisualStudio中使用断点,尽管如此,我仍然需要一些命令来设置断点

if (ABC())
{
    // What command should be here to set a break point?
}

您可以使用MessageBox.Show()

或调试跟踪

或者将应用程序类型设置为console应用程序(在项目设置中),并使用console.WriteLine()

或者使用System.Diagnostics tracing

和是要使用的方法,在发布版本中(或者更准确地说,在未定义调试的版本中),它们将被编译出来。要在定义了
跟踪
的版本中包含(例如调试和发布的调试配置),请使用和

如果您附加了调试器(例如VisualStudio),那么它应该显示这些调试器(在VS中)


当不在调试器中运行时,类似Sysinternal的工具将显示此输出。

与C#中的cout/printf等效的是Console.WriteLine(字符串)或Console.Write(字符串)

你可以用


要进入调试器,请使用。而不是If(){Sture};}构造,请考虑相关的例程。

您只需单击代码左边以设置断点。我还应该添加MessageBox,WPF当然支持它。Debug.Write和Debug.WriteLine仅在解决方案设置为Debug时才会打印。通常情况下,在发布模式下测试某些内容是必需的。根据我个人的经验,我可以说整个班级都充满了调试。WriteLine是丑陋的。公平点。。。但不像一个充满MessageBox的类那么难看。显示输出调试信息的调用,并且必须从发布代码中删除。;)@拉姆霍恩真的。。。我确实想提到
Trace
@Richard-同样丑陋。解决方案实际上是使用断点。跟踪和调试只对开发人员有用。我可能同意使用Assert语句。@Ramhound日志记录(以及跟踪和调试方法)是许多应用程序中的关键。虽然重要的(且有用的)日志记录在消费者应用程序中很少见,但它是操作业务应用程序的关键(例如,监视应用程序是否有效运行,以及在应用程序未有效运行时进行诊断)。当您独立运行.exe时,它不会执行任何操作,但VS主机会将
Console.Out
重定向到输出窗口。虽然使用
控制台
方法有更好的选择,但德怀特的答案是正确的:这些方法与cout/printf完全相同。