.net 文件对话框异常
我正试图像下面的代码一样使用.net 文件对话框异常,.net,exception,c++-cli,.net,Exception,C++ Cli,我正试图像下面的代码一样使用OpenFileDialog,但是编译器显示异常System::NullReferenceException,一旦我将代码放在try和catch块之间,就不会抛出异常,但现在显示了对话框 try { if(openFileDialog1->ShowDialog() == System::Windows::Forms::DialogResult::OK) { this->textBox18->Text=openF
OpenFileDialog
,但是编译器显示异常System::NullReferenceException
,一旦我将代码放在try
和catch
块之间,就不会抛出异常,但现在显示了对话框
try
{
if(openFileDialog1->ShowDialog() == System::Windows::Forms::DialogResult::OK)
{
this->textBox18->Text=openFileDialog1->FileName->ToString();
}
}
catch(System::NullReferenceException^ e){ e->Message;}
必须先创建
OpenFileDialog
类的实例,然后才能使用它。在此代码段中:
private: System::Windows::Forms::OpenFileDialog^ openFileDialog1;
您只是声明了一个类型为OpenFileDialog
(初始化为null
)的变量,但在将其用于
OpenFileDialog^ openFileDialog1 = gcnew OpenFileDialog;
您在使用它之前是否创建了
openFileDialog1
?像这样private:System::Windows::Forms::openFileDialog1^openFileDialog1代码>??@Aan编号。类似于此OpenFileDialog^openFileDialog1=gcnewopenfiledialog代码>@Nacereddine谢谢这解决了问题,但您的代码段和我的代码段之间有什么区别?异常可能是因为openFileDialog1中的文件名为null,而ToString()引发了null引用异常。检查。