/// <summary> /// Generate report. /// </summary> private void GenerateReport(IReportBuilder builder, string title) { try { using (var dialog = new SaveFileDialog()) { dialog.Title = title; dialog.DefaultExt = builder.ReportExtension; dialog.Filter = "Reports|*" + builder.ReportExtension; if (dialog.ShowDialog(this) == DialogResult.OK) { // Generate now builder.Generate(dialog.FileName); } } } catch (Exception ex) { MessageBox.Show(Application.ProductName, ex.Message, MessageBoxButtons.OK, MessageBoxIcon.Error); } }