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.