windowsforms-devexpress-dot-xtrarichedit-dot-richeditcontrol-dot-savedocument-x28-system-dot-io-dot-stream-devexpress-dot-xtrarichedit-dot-documentformat-x29.md
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
public virtual void SaveDocument(
Stream stream,
DocumentFormat documentFormat
)
Public Overridable Sub SaveDocument(
stream As Stream,
documentFormat As DocumentFormat
)
| Name | Type | Description |
|---|---|---|
| stream | Stream |
The stream to output the document to.
| | documentFormat | DocumentFormat |
One of the DocumentFormat enumeration values.
|
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.
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.
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");
}
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
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
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