PrintPreviewOptions.SaveMode Property
Gets or sets a value which specifies how the file path to export a document is obtained when exporting a document from the Print Preview.
Namespace: DevExpress.XtraPrinting
Assembly: DevExpress.Printing.v24.1.Core.dll
NuGet Package: DevExpress.Printing.Core
Declaration
Property Value
Type | Description |
---|---|
SaveMode | A SaveMode enumeration value which specifies how the file path is obtained. |
Available values:
Name | Description |
---|---|
UsingDefaultPath | A document is exported to the path specified by the PrintPreviewOptions.DefaultDirectory and PrintPreviewOptions.DefaultFileName properties. So, the Save File dialog isn’t shown in this case. |
UsingSaveFileDialog | A document is exported using the file path and the file name specified by an end-user in the Save File dialog, which is shown prior to exporting a document. |
Property Paths
You can access this nested property as listed below:
Object Type | Path to SaveMode |
---|---|
ExportOptions |
|
Remarks
Use the SaveMode property to implement silent exporting in the Print Preview (when no Save File dialog is displayed for an end-user). To accomplish this, you should provide the correct file path using the PrintPreviewOptions.DefaultDirectory and PrintPreviewOptions.DefaultFileName properties, and set the SaveMode property to SaveMode.UsingDefaultPath.
Example
This example illustrates how to specify the primary export options of a report by using the XtraReport.ExportOptions property. These options are taken into account when a document is being exported from a print preview.
This example presumes that a report is exported silently, without prompting an end-user to customize the export options.
All available export options are listed in the ExportOptionKind enumeration.
Note
A complete sample project is available at https://github.com/DevExpress-Examples/reporting-winforms-export-options-actions
using System;
using System.Drawing.Imaging;
using System.Globalization;
using System.Text;
using System.Windows.Forms;
using DevExpress.XtraPrinting;
// ...
namespace WindowsFormsApplication1 {
public partial class Form1 : Form {
public Form1() {
InitializeComponent();
}
private XtraReport1 report;
private void Form1_Load(object sender, EventArgs e) {
report = new XtraReport1();
documentViewer1.DocumentSource = report;
report.CreateDocument();
PrintingSystemBase printingSystem1 = report.PrintingSystem;
// Obtain the current export options.
ExportOptions options = printingSystem1.ExportOptions;
// Set Print Preview options.
options.PrintPreview.ActionAfterExport = ActionAfterExport.AskUser;
options.PrintPreview.DefaultDirectory = "C:\\Temp";
options.PrintPreview.DefaultFileName = "Report";
options.PrintPreview.SaveMode = SaveMode.UsingDefaultPath;
options.PrintPreview.ShowOptionsBeforeExport = false;
// Set E-mail options.
options.Email.RecipientAddress = "someone@somewhere.com";
options.Email.RecipientName = "Someone";
options.Email.Subject = "Test";
options.Email.Body = "Test";
// Set CSV-specific export options.
options.Csv.Encoding = Encoding.Unicode;
options.Csv.Separator =
CultureInfo.CurrentCulture.TextInfo.ListSeparator.ToString();
// Set HTML-specific export options.
options.Html.CharacterSet = "UTF-8";
options.Html.RemoveSecondarySymbols = false;
options.Html.Title = "Test Title";
// Set Image-specific export options.
options.Image.Format = DXImageFormat.Jpeg;
// Set MHT-specific export options.
options.Mht.CharacterSet = "UTF-8";
options.Mht.RemoveSecondarySymbols = false;
options.Mht.Title = "Test Title";
// Set PDF-specific export options.
options.Pdf.Compressed = true;
options.Pdf.ImageQuality = PdfJpegImageQuality.Low;
options.Pdf.NeverEmbeddedFonts = "Tahoma;Courier New";
options.Pdf.DocumentOptions.Application = "Test Application";
options.Pdf.DocumentOptions.Author = "Test Team";
options.Pdf.DocumentOptions.Keywords = "Test1, Test2";
options.Pdf.DocumentOptions.Subject = "Test Subject";
options.Pdf.DocumentOptions.Title = "Test Title";
// Set Text-specific export options.
options.Text.Encoding = Encoding.Unicode;
options.Text.Separator =
CultureInfo.CurrentCulture.TextInfo.ListSeparator.ToString();
// Set XLS-specific export options.
options.Xls.ShowGridLines = true;
options.Xls.SheetName = "Page 1";
options.Xls.TextExportMode = TextExportMode.Value;
// Set XLSX-specific export options.
options.Xlsx.ShowGridLines = true;
options.Xlsx.SheetName = "Page 1";
options.Xlsx.TextExportMode = TextExportMode.Value;
}
}
}