4

我有两个包含DataGridViews 的控件,位于DockPanel. 如果一个处于编辑模式并且我切换窗格,我会NullReferenceExceptionDataGridView'sEndEdit()方法中得到一个抛出。堆栈跟踪不会比这更深,并且异常不包含更多信息。

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

4

3 回答 3

5

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

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

于 2009-03-26T11:44:58.297 回答
1

您是否查看过 InnerException 属性?

于 2009-03-26T11:45:04.787 回答
1

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

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

于 2009-03-26T12:11:56.097 回答