New to Telerik UI for WPFStart a free 30-day trial

Using DocxFormatProvider

Updated on Sep 15, 2025

DocxFormatProvider makes it easy to import and export RadRichTextBox to/from DOCX format, preserving the entire document structure and formatting.

All you have to do in order to use DocxFormatProvider is to add a reference to Telerik.Windows.Documents.FormatProviders.OpenXml.dll.

Import

In order to import a .docx file, you need to use the Import() method of DocxFormatProvider. The code in Example 1 shows how to use DocxFormatProvider to import a DOCX document from a file.

Example 1: Import document from a file

C#
	Telerik.Windows.Documents.FormatProviders.OpenXml.Docx.DocxFormatProvider provider = new Telerik.Windows.Documents.FormatProviders.OpenXml.Docx.DocxFormatProvider();
	using (FileStream inputStream = new FileStream("Sample.docx",FileMode.Open))
	{
		this.radRichTextBox.Document = provider.Import(inputStream);
	}

And here is how you can import a document from byte array containing the docx document:

Example 2: Import document from a byte array

C#
    Telerik.Windows.Documents.FormatProviders.OpenXml.Docx.DocxFormatProvider provider = new Telerik.Windows.Documents.FormatProviders.OpenXml.Docx.DocxFormatProvider();
    RadDocument document = provider.Import(input);

Export

In order to export a document to DOCX, you need to use the Export() method of DocxFormatProvider. Example 2 shows how to use DocxFormatProvider to export RadDocument to a file.

Example 3: Export document to a file

C#
	Telerik.Windows.Documents.FormatProviders.OpenXml.Docx.DocxFormatProvider provider = new Telerik.Windows.Documents.FormatProviders.OpenXml.Docx.DocxFormatProvider();
	using (FileStream output =  new FileStream("Sample.docx",FileMode.OpenOrCreate))
	{
		RadDocument document = this.radRichTextBox.Document;
		provider.Export(document, output);
	}

You can also export the document to a byte array and preserve it in a database.

Example 4: Export a document to a byte array

C#
    Telerik.Windows.Documents.FormatProviders.OpenXml.Docx.DocxFormatProvider provider = new Telerik.Windows.Documents.FormatProviders.OpenXml.Docx.DocxFormatProvider();
    RadDocument document = CreateRadDocument();
    byte[] output = provider.Export(document);

The resulting documents can be opened in any application that supports DOCX documents.

owever, the format providers cannot be used in XAML and you have to implement a logic that will call their Import() and Export() methods. This is something that you might not want to be concerned with when using RadRichTextBox in a data bound scenarios. For such cases, the DataProvider classes are used. They wrap the FormatProviders' functionality and allow its usage in XAML.

See Also

In this article
ImportExportSee Also
Not finding the help you need?
Contact Support