Skip to main content

Document.LoadDocument(Stream) Method

Loads a document from the stream.

Namespace: DevExpress.XtraRichEdit.API.Native

Assembly: DevExpress.RichEdit.v24.1.Core.dll

NuGet Packages: DevExpress.RichEdit.Core, DevExpress.Win.Navigation

Declaration

bool LoadDocument(
    Stream stream
)

Parameters

Name Type Description
stream Stream

A Stream object that is the stream used to load a document.

Returns

Type Description
Boolean

true, if the document is successfully loaded; otherwise, false.

Remarks

The source stream can be non-seekable. In this case, the stream is buffered automatically. After loading the document, the stream remains open.

The format of the document loaded from a stream is detected automatically by the built-in IFormatDetectorService service implementation. The following formats are detected:

  • DOC, DOCM, DOTX, DOT, DOTM, DOCX, RTF, HTM, HTML, MHT, XML, FlatOpc, EPUB;
  • ODT - non-encrypted files only.

Plain text cannot be detected automatically. To load a plain text document, use another method override with DocumentFormat.PlainText as a parameter.

If the format detection fails or the passed stream is null, the RichEditControl.InvalidFormatException event fires.

Use the RichEditControl.DocumentLoaded (WinForms), RichEditDocumentServer.DocumentLoaded or RichEditControl.DocumentLoaded (WPF) event to determine a moment when the document model can be safely modified. Handle the DocumentLayout.DocumentFormatted event to check the loaded document’s layout.

Tip

Define the format explicitly in the LoadDocument method overloads to improve performance.

using System.IO;
using DevExpress.XtraRichEdit;
using DevExpress.XtraRichEdit.API.Native;
using System.Reflection;
// ...
//
// Load document from stream
using(Stream stream = GetResourceStream("MyApplication.Document1.rtf"))
{
    stream.Seek(0, SeekOrigin.Begin);
    wordProcessor.LoadDocument(stream);
    stream.Close();
}
static Stream GetResourceStream(string resourceName)
{
    return Assembly.GetExecutingAssembly().GetManifestResourceStream(resourceName);
}
See Also