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

ia2d9nvy  于 2023-01-13  发布在  C#
关注(0)|答案(5)|浏览(205)

对于C++/C,最简单的调试方法是使用cout/printf将正在发生的事情打印到控制台。
WPF/C#中的等效方法是什么?
我考虑过使用MessageBox(),但是WPF似乎不支持这个函数。我也考虑过使用日志记录函数,但是我想它比printf/cout复杂得多。
我可以在VisualStudio中使用断点,即使如此,我也需要一些命令来设置断点。

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

eulz3vhy1#

Debug.WriteDebug.WriteLine是要使用的方法,在发布版本中(或者更准确地说,在未定义DEBUG的版本中),它们将被编译出来。要包含在定义了TRACE的版本中(例如,调试和发布的调试配置),请使用Trace.WriteTrace.WriteLine
如果你有一个调试器连接(如Visual Studio),那么它应该显示这些(在VS中它的Output tool window)。
当不在调试器中运行时,像Sysinternal的Debug View这样的工具将显示此输出。

tjrkku2a

tjrkku2a2#

您可以使用System.Diagnostics.Debug.WriteLine
要中断调试器,请使用System.Diagnostics.Debugger.Break。而不是if(){ Break;}构造,请考虑Debug.Assert相关例程。

vfh0ocws

vfh0ocws3#

您可以使用MessageBox.Show()
或调试跟踪
或者使应用程序键入控制台应用程序(在项目设置中)并使用Console.WriteLine()
或者使用System.Diagnostics跟踪

pxyaymoc

pxyaymoc4#

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

xqk2d5yq

xqk2d5yq5#

您可以使用;

System.Diagnostics.Debug.WriteLine("hello world");

System.Diagnostics.Debug.Write("hello world");

Debug.WriteLine("hello world");

Debug.Write("hello world");

如果您想查看调试日志,请不要单击“Start without debugging button”。

相关问题