Copy Chart To Clipboard
MemoryStream MemoryStream1 = new MemoryStream();
Chart1.SaveImage(MemoryStream1, System.Windows.Forms.DataVisualization.Charting.ChartImageFormat.Bmp);
System.Drawing.Bitmap Bitmap1 = new System.Drawing.Bitmap(MemoryStream1);
System.Windows.Forms.Clipboard.SetImage(Bitmap1);
Save Chart To File
const string MY_FILE_EXTENSION = "png";
String SaveAsFilename;
//If last directory is not valid then default to My Documents
if (!Directory.Exists(Path.GetDirectoryName(ApMain.LastFileDirectory)))
ApMain.LastFileDirectory = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);
SaveFileDialog SelectFileDialog = new SaveFileDialog();
SelectFileDialog.Filter = "Image File (*." + MY_FILE_EXTENSION + ")|*." + MY_FILE_EXTENSION; //"txt files (*.txt)|*.txt|All files (*.*)|*.*"
SelectFileDialog.FilterIndex = 1; //(First = 1, not 0)
SelectFileDialog.Title = "Save Chart Image As";
SelectFileDialog.OverwritePrompt = true;
try
{
SelectFileDialog.InitialDirectory = ApMain.LastFileDirectory;
}
catch (Exception)
{
SelectFileDialog.InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);
}
//Display dialog box
if (SelectFileDialog.ShowDialog() == System.Windows.Forms.DialogResult.OK) //This ensures correct filename extension is used
{
//----- SAVE THE FILE -----
SaveAsFilename = SelectFileDialog.FileName;
//STORE LAST USED DIRECTORY
if (SaveAsFilename.LastIndexOf("\\") >= 0)
ApMain.LastFileDirectory = SaveAsFilename.Substring(0, (SaveAsFilename.LastIndexOf("\\") + 1));
else
ApMain.LastFileDirectory = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);
Chart1.SaveImage(SaveAsFilename, System.Windows.Forms.DataVisualization.Charting.ChartImageFormat.Png);
}
Feel free to comment if you can add help to this page or point out issues and solutions you have found. I do not provide support on this site, if you need help with a problem head over to stack overflow.