Salve.
Sto facendo un pò di esperimenti in C#. Vorrei poter salvare un file che ho aperto con la finestra di dialogo openFileDialog.
Utilizzo un'altra finestra di dialogo quindi saveFileDialog.
Nel form ho creato due bottoni e un PictureBox. Sotto c'è il codice dei due bottoni:
codice:
private void btnOpen_Click(object sender, EventArgs e)
{
if (openFileDialog1.ShowDialog() == DialogResult.OK)
pictureBox1.ImageLocation = openFileDialog1.FileName;
}
private void btnSave_Click(object sender, EventArgs e)
{
SaveFileDialog salvaImmagine = new SaveFileDialog();
salvaImmagine.Filter = "JPeg Image|*.jpg|Bitmap Image|*.bmp|Gif Image|*.gif";
salvaImmagine.Title = "Save an Image File";
salvaImmagine.ShowDialog();
if (salvaImmagine.FileName != "")
{
System.IO.FileStream fs =
(System.IO.FileStream)salvaImmagine.OpenFile();
switch (salvaImmagine.FilterIndex)
{
case 1:
this.btnSave.Image.Save(fs,
System.Drawing.Imaging.ImageFormat.Jpeg);
break;
case 2:
this.btnSave.Image.Save(fs,
System.Drawing.Imaging.ImageFormat.Bmp);
break;
case 3:
this.btnSave.Image.Save(fs,
System.Drawing.Imaging.ImageFormat.Gif);
break;
}
fs.Close();
}
E praticamente mi da una eccezione del tipo "Riferimento a un oggetto non impostato su un'istanza di oggetto" quando gli do OK nella finestra di dialogo.
Come se non riuscisse a trovare il file da salvare.