public static bool ExportGridToFile(DataTable dt) { if (dt == null) { throw new NullParameterException("DataTable not assigned!"); } SaveFileDialog saveDlgExport = new SaveFileDialog(); saveDlgExport.DefaultExt = "xls"; saveDlgExport.Filter = "Excel Files|*.xls|CSV Files|*.csv|XML Files|*.xml|All Files|*.*"; saveDlgExport.Title = "Export Data To File"; if (saveDlgExport.ShowDialog() != DialogResult.OK) { return(false); } DataExport.ExportFormat format = DataExport.ExportFormat.CSV; if (saveDlgExport.FilterIndex == 1) { format = DataExport.ExportFormat.Excel; } else if (saveDlgExport.FilterIndex == 2) { format = DataExport.ExportFormat.CSV; } try { if (saveDlgExport.FilterIndex != 3) { DataExport exporter = new DataExport("Win"); exporter.ExportDetails(dt, format, saveDlgExport.FileName); } else if (saveDlgExport.FilterIndex == 3) { dt.WriteXml(saveDlgExport.FileName); } } catch (Exception ex) { MessageBox.Show("Can not export data!\n" + ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } return(true); }
private void ExportGridToFile() { DataTable dt = null; DataView view = DataView; if (view != null && !String.IsNullOrEmpty(view.RowFilter)) { dt = view.ToTable(); } else { dt = DataTable; } if (dt == null) { throw new Exception("DataTable can not be extracted from the current gird!"); } DataExport.ExportGridToFile(dt); }