Skip to main content

XtraReport.ExportToMht(Stream, MhtExportOptions) Method

Exports a report to the specified stream in MHT format.

Namespace: DevExpress.XtraReports.UI

Assembly: DevExpress.XtraReports.v23.2.dll

NuGet Package: DevExpress.Reporting.Core

Declaration

public void ExportToMht(
    Stream stream,
    MhtExportOptions options = null
)

Parameters

Name Type Description
stream Stream

A Stream for output data.

Optional Parameters

Name Type Default Description
options MhtExportOptions null

An MhtExportOptions object that specifies the MHT export options. You can omit this parameter to use the current report export options.

Remarks

Note

Once the document export has started, it runs to completion and you cannot interrupt or cancel it.

This method exports a report to a file in MHT format with the specified MHT export options.

If you do not specify export options, the method uses the current report export options. To access the report export options, use the XtraReport.ExportOptions.Mht notation.

Note

Do not set the ImageExportOptions.ExportMode property to ImageExportMode.DifferentFiles when you use this method to export to a stream.

Use the ExportToMhtAsync(Stream, MhtExportOptions, CancellationToken) method instead of ExportToMht to export a report asynchronously in a separate task.

Example

This example demonstrates how to export a report to MHT format.

The project uses the XtraReport.ExportToMht method with the MhtExportOptions object as a parameter.

using System.Drawing;
using System.Diagnostics;
using DevExpress.XtraPrinting;
using DevExpress.XtraReports.UI;
// ...

private void ExportToMHT()
{
    // A path to export a report.
    string reportPath = "c:\\Test.mht";

    // Create a report instance.
    XtraReport1 report = new XtraReport1();

    // Get its MHT export options.
    MhtExportOptions mhtOptions = report.ExportOptions.Mht;

    // Set MHT-specific export options.
    mhtOptions.CharacterSet = "UTF-8";
    mhtOptions.TableLayout = false;
    mhtOptions.RemoveSecondarySymbols = false;
    mhtOptions.Title = "Test Title";

    // Set the pages to be exported, and page-by-page options.
    mhtOptions.ExportMode = HtmlExportMode.SingleFilePageByPage;
    mhtOptions.PageRange = "1, 3-5";
    mhtOptions.PageBorderColor = Color.Blue;
    mhtOptions.PageBorderWidth = 3;

    // Export the report to MHT.
    report.ExportToMht(reportPath);

    // Show the result.
    StartProcess(reportPath);
}

// Use this method if you want to automaically open
// the created MHT file in the default program.
public void StartProcess(string path)
{
    Process process = new Process();
    try
    {
        process.StartInfo.FileName = path;
        process.Start();
        process.WaitForInputIdle();
    }
    catch { }
}

The following code snippets (auto-collected from DevExpress Examples) contain references to the ExportToMht(Stream, MhtExportOptions) method.

Note

The algorithm used to collect these code examples remains a work in progress. Accordingly, the links and snippets below may produce inaccurate results. If you encounter an issue with code examples below, please use the feedback form on this page to report the issue.

See Also