我有两个控件包含 DataGridViews 在不同的窗格中 DockPanel. 。如果处于编辑模式并且我切换窗格,我会得到一个 NullReferenceException 从内部抛出 DataGridViewEndEdit() 方法。堆栈跟踪不会比这更深入,并且异常不包含任何更多信息。

我在反射器中查看了该方法,但看不到任何明显为空的内容。我怀疑问题实际上出在我的代码中,但异常是从 Microsoft 的代码中重新抛出的,这会重置堆栈跟踪。我如何找出最初导致异常的原因?

有帮助吗?

解决方案

如果您怀疑 MS 代码中存在错误,您可以从符号服务器下载调试符号,加载它们并在调试时跟踪它? 像这样.

请注意,这些符号受各种许可证之一的约束。如果(例如)您从事“单一”贡献等工作,这可能会影响您。

其他提示

你有没有看着InnerException属性?

按照说明设置 MS 符号服务器源服务器1. 。将调试器设置为在引发 NullReferenceException 时中断。然后,您将获得用于调试的完整源代码,或者至少获得完整的堆栈跟踪。

1 请注意,列出的 QFE 包含在 SP1 中。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top