2011-07-07 6 views
0

私はプログラムをデバッグしていました。メッセージボックスには System.Windows.Messagebox.show("Message"); を使用して正常にデバッグし、私が作成したすべてのメッセージを削除しました。 私はそれを実行しようとすると、メッセージボックスの1つがまだ見えていて、okをクリックすると、今度は同じエラーがあり、取り除くことができません。隠しメッセージボックスとそれにエラーを与えます

と、InvalidOperationExceptionが未処理だった: これは誤りがある

OpenFileDialog fileDialog = new OpenFileDialog(); 
fileDialog.Filter = "CSV Files|*.csv"; 
fileDialog.Multiselect = false; 
fileDialog.Title = "Load CSV file"; 

List<List<string>> listOfPreview = new List<List<string>>(); 

**if (fileDialog.ShowDialog().Value)** this is the line of the error 
    { 
     listOfPreview = viewModel.ImportPreviewCsv(fileDialog.FileName, ','); 
    } 

を停止する方法です。

ディスパッチャ処理は中断されましたが、メッセージはまだ処理されています。今

イムは、私はどこでもそれを見つけるカントメッセージボックスを見つけることCTRL +Fをやろうとしています。私のプログラムはまだ動作していません。助けてください。

+0

このコードをスレッドで実行していますか?それは合法ではない、OpenFileDialogは、UIスレッドに表示する必要があります。 –

答えて

0

Visual StudioでF5キーを押しながらデバッグモードでプログラムを実行します。 MessageBoxが来たら、ビジュアルスタジオのツールバーの '一時停止'ボタンを押してください。一時停止ボタンはこのように表示されます '||'

今すぐコールスタックウィンドウを参照してください。あなたはMessageBoxが表示された場所からそれを見つけることができます。

+0

現在の場所に使用できるソースコードはありません。それはどこかから呼び出されています。 – Adnama

2

あなたはShowDialogのが間違って処理する方法、

あなただけ交換する必要があります。

**if (fileDialog.ShowDialog().Value)** 

で:

if (fileDialog.ShowDialog() != DialogResult.Cancel) 
+0

これはwpfのためですあなたが私に言ったように動作していないので – Adnama

0

このコードを試してみてください

OpenFileDialog fileDialog = new OpenFileDialog(); 
fileDialog.Filter = "CSV Files|*.csv"; 
fileDialog.Multiselect = false; 
fileDialog.Title = "Load CSV file"; 

List<List<string>> listOfPreview = new List<List<string>>(); 

if (fileDialog.ShowDialog()!= DialogResult.Cancel) 
{ 
    listOfPreview = viewModel.ImportPreviewCsv(fileDialog.FileName, ','); 
} 

または

OpenFileDialog fileDialog = new OpenFileDialog(); 
fileDialog.Filter = "CSV Files|*.csv"; 
fileDialog.Multiselect = false; 
fileDialog.Title = "Load CSV file"; 

List<List<string>> listOfPreview = new List<List<string>>(); 

if (fileDialog.ShowDialog()!= DialogResult.Ok) 
{ 
    listOfPreview = viewModel.ImportPreviewCsv(fileDialog.FileName, ','); 
} 
+0

これはうまくいきましたが、メッセージボックスはとにかく表示されています。エラーはまだ表示されていて、プログラムはまだ破損しています – Adnama

関連する問題