如何找出导致 NullReferenceException 的原因
本文关键字:NullReferenceException 何找出 | 更新日期: 2023-09-27 18:35:10
我正在使用包含第三方DataGridView的c#编写一个.net程序。我设法 - 我想要的数据如何,添加/删除列和行,对用户选择做出反应等等 - 到目前为止一切正常。现在,当我打开标准OpenFileDialog时,我的问题就来了 - 它按预期打开,我也可以选择文件。但是当我关闭它(无论我使用"打开"还是"取消"按钮),然后尝试在 GridView 中选择列和行时,我在 System.Windows.Forms.dll 中得到一个 NullReferenceException。我不明白为什么打开和关闭标准对话框会导致此问题。我阅读了以下问题,它回答了但无法在那里发表评论 - 所以我不得不打开一个新问题:
什么是 NullReferenceException,如何解决它?
我想我理解什么是 NullReferenceException,但如果你能解释一下如何找出导致它的对象,那就太好了。那么如何调试这个问题呢?我什至不知道我的代码中是否有问题,或者它是否是第三方扩展中的错误。
谢谢!
编辑,14.10.2013:
我认为回扔有效,但它将我指向这一行(见箭头):
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace MyProg
{
static class Program
{
/// <summary>
/// Der Haupteinstiegspunkt für die Anwendung.
/// </summary>
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
---> Application.Run(new MyProgMain());
}
}
}
不幸的是,这对我没有帮助 - 当调试器突出显示此行时是什么意思?
启用首次机会例外:
在 Visual Studio IDE 上,按 Esc + Cntl + Alt + E,然后选中公共语言运行时异常的"抛出"复选框