martedì 19 giugno 2012

Il "Save as..." in un progetto client in c#

Richiamando questo metodo, in un applicazione client in c#, è possibile aprire la famosa mascherina del "Save as..." e salvare l'oggetto che si sta eseguendo (documento txt in questo caso, musica...) con un nome differente su di un percorso predefinito.
public void SaveProjectAs(){
 string pathExample = "c:\\";
 string projectNameBefore = "Example";
 string projectNameAfter;
 try
 {
  SaveFileDialog saveFileDialog = new SaveFileDialog();
  saveFileDialog.Title = "Save project as...";
  saveFileDialog.DefaultExt = ".txt";
  saveFileDialog.Filter = "Project (*.txt)|*.txt";
  saveFileDialog.InitialDirectory = pathExample + "Projects";
  saveFileDialog.FileName = "Copy of " + projectNameBefore;
  if (saveFileDialog.ShowDialog() == DialogResult.OK)
   projectNameAfter = saveFileDialog.FileName;
  else
   return;
  File.Copy(projectNameBefore, projectNameAfter, true);
 }
 catch (Exception ex)
 {
  MessageBox.Show("Error: " + ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
 }
}