Back to Devexpress

RichEditControl.SaveDocument(Stream, DocumentFormat) Method

windowsforms-devexpress-dot-xtrarichedit-dot-richeditcontrol-dot-savedocument-x28-system-dot-io-dot-stream-devexpress-dot-xtrarichedit-dot-documentformat-x29.md

latest6.9 KB
Original Source

RichEditControl.SaveDocument(Stream, DocumentFormat) Method

Saves the control’s document to a file and specifies the document’s format.

Namespace : DevExpress.XtraRichEdit

Assembly : DevExpress.XtraRichEdit.v25.2.dll

NuGet Package : DevExpress.Win.RichEdit

Declaration

csharp
public virtual void SaveDocument(
    Stream stream,
    DocumentFormat documentFormat
)
vb
Public Overridable Sub SaveDocument(
    stream As Stream,
    documentFormat As DocumentFormat
)

Parameters

NameTypeDescription
streamStream

The stream to output the document to.

| | documentFormat | DocumentFormat |

One of the DocumentFormat enumeration values.

|

Remarks

You can check for the Document.RequiredExportCapabilities, to be sure that the chosen export format supports them.

Use the RichEditControl.Options.Export property to set global export options, or handle the RichEditControl.BeforeExport event to specify options for an individual export action.

When the specified document format requires that a certain type of content should be saved as external objects, as is the case for HTML format, the proper use of the SaveDocument becomes more complex. You can specify whether images are embedded in HTML code using the HtmlDocumentExporterOptions.EmbedImages property or provide a custom IUriProvider to construct src references for images.

See the IUriProvider article, and the How to: Save a Document in the RichEdit Control and the How to: Retain the Image URI in HTML Document articles for examples of use.

Note

The SaveDocument method call does not automatically change the RichEditControl.Modified property value.

Example

The following code saves a document to a file. The current RichEditControl instance is passed to the BarItem.ItemClick event handler using the BarItem.Tag property.

View Example

csharp
static void buttonCustomAction_ItemClick_SaveDocumentMethod(object sender, ItemClickEventArgs e) {
    RichEditControl richEdit = e.Item.Tag as RichEditControl;
    if(MessageBox.Show("Do you want to save this document to the default ('savedResults.docx') location?", 
        "Saving a document", MessageBoxButtons.YesNo) == DialogResult.Yes)

        richEdit.SaveDocument("savedResults.docx", DevExpress.XtraRichEdit.DocumentFormat.Docx);
    else
        richEdit.SaveDocumentAs();
    System.Windows.Forms.MessageBox.Show("A document was saved sucsessfully");
}
vb
Private Shared Sub buttonCustomAction_ItemClick_SaveDocumentMethod(ByVal sender As Object, ByVal e As ItemClickEventArgs)
    Dim richEdit As RichEditControl = TryCast(e.Item.Tag, RichEditControl)
    If MessageBox.Show("Do you want to save this document to the default ('savedResults.docx') location?",
                       "Saving a document", MessageBoxButtons.YesNo) = DialogResult.Yes Then

        richEdit.SaveDocument("savedResults.docx", DevExpress.XtraRichEdit.DocumentFormat.Docx)
    Else
        richEdit.SaveDocumentAs()
    End If
    System.Windows.Forms.MessageBox.Show("A document was saved sucsessfully")
End Sub

The following code snippet (auto-collected from DevExpress Examples) contains a reference to the SaveDocument(Stream, DocumentFormat) 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.

winforms-richeditcontrol-common-api/CS/RichEditAPISample/CodeExamples/RichEditControlActions.cs#L419

csharp
using (FileStream htmlFileStream = new FileStream("Document_HTML.html", FileMode.Create)) {
    richEdit.SaveDocument(htmlFileStream, DocumentFormat.Html);
}

winforms-richeditcontrol-common-api/VB/RichEditAPISample/CodeExamples/RichEditControlActions.vb#L426

vb
Using htmlFileStream As New IO.FileStream("Document_HTML.html", IO.FileMode.Create)
    richEdit.SaveDocument(htmlFileStream, DocumentFormat.Html)
End Using

See Also

How to: Save a Document in the RichEditControl

Export Document Images to HTML

BeforeExport

IUriProvider

RichEditControl Class

RichEditControl Members

DevExpress.XtraRichEdit Namespace