2016-09-29 25 views
0

mscorlib.dllで 'System.ArgumentException'型の未処理例外が発生しました。追加情報:パスは正当な形式ではありません。エラーは、ウィンドウを閉じた後にもう一度押すと発生します。'System.ArgumentException'型の未処理の例外が発生しました

相続コード:

 private void button1_Click(object sender, EventArgs e) 
    { 
     OpenFileDialog OpenFd = new OpenFileDialog(); 
     OpenFd.Filter = "Images only. |*.jpg; *.jpeg; *.png; *.gif;"; 

     DialogResult dr = OpenFd.ShowDialog(); 
     pictureBox1.Image = Image.FromFile(OpenFd.FileName); 
     ItemUrl.Text = OpenFd.FileName; 


    } 
+0

最初と2番目の実行時の 'OpenFd.FileName'とは何ですか? –

+0

コードをデバッグしましたか? – xxbbcc

+0

@Konrad Kokosaこれは、あなたが写真を選択できるようにあなたのファイルを開くようにブラウズボタンのコードです。OpenFileDest –

答えて

0

あなたは、画像を選択したかのFileDialogの「キャンセル」をクリックするかどうかを処理する必要があります。

 OpenFileDialog OpenFd = new OpenFileDialog(); 
     OpenFd.Filter = "Images only. |*.jpg; *.jpeg; *.png; *.gif;"; 

     if (OpenFd.ShowDialog() == DialogResult.OK) //You selected an image 
     { 
      pictureBox1.Image = Image.FromFile(OpenFd.FileName); 
      ItemUrl.Text = OpenFd.FileName; 
     } 
     else 
     { 
      //You cancelled the operation 
     } 
+0

試してみました。うまくいけば、私は感謝のうちにそれを見るでしょう –

+0

ダイアログは閉じたファイルを選択せず​​に、空の文字列値を持つOpenFd.Filenameとなる。コンパイラがImage.FromFile()のファイルアドレスとして使用しようとしたときにエラーが発生した – Innat3

+0

はい、それも私が疑っていることです、もし私がtheresのメソッドを5つの項目を持つコンボボックスと言ってもいいですか?コンボボックスが別の値に変更された場合、ボタンは表示されません= .Visible = false;どのようなコード行を使用する必要がありますか? E.Gコンボボックス1の場合。 ??? @ innat3 –

関連する問題