Completed
Last Updated: 13 Aug 2026 09:40 by ADMIN
Release Telerik UI for WPF 2026.3.812 (Q3 2026)
When a worksheet has name that has spaces and a hyperlink to this worksheet is being inserted in Excel, quotes are used to surround the name (ex: 'Sheet 12'!A1) for a valid hyperlink. If quotes are not added, the hyperlink is invalid.
In RadSpreadsheet, it is the opposite: (Sheet 12!A1 is correct, while 'Sheet 12'!A1 is incorrect).
Thus, opening such an exported document from RadSpreadsheet in Excel loads it with incorrect hyperlinks; and importing such an Excel document in RadSpreadsheet loads it with incorrect hyperlinks.

A way to workaround this issue is to modify the hyperlinks on import/export from/to RadSpreadsheet. You can find attached a project demonstrating this approach.
Completed
Last Updated: 06 Aug 2026 09:48 by ADMIN
Release 2026.2.519 (2026 Q2)

HtmlFormatProvider: Styles are not correctly preserved when a <b> tag is applied to the same styled element.

Workaround: Apply bold through CSS instead of using <b>.

Completed
Last Updated: 06 Aug 2026 09:48 by ADMIN
Release 2026.2.519 (2026 Q2)

NetStandard: Missing content due to empty glyph outlines in embedded TrueType font subsets.

Workaround 1

Fully embed the fonts in the result PDF document:

PdfFormatProvider pdfFormatProvider = new PdfFormatProvider();
pdfFormatProvider.ExportSettings.FontEmbeddingType = FontEmbeddingType.Full;

Workaround 2

Switch to a .NET Framework project environment and use the .NET Framework PdfProcessing packages.

Completed
Last Updated: 06 Aug 2026 09:48 by ADMIN
Release 2026.2.519 (2026 Q2)

Corrupted document when exporting "Courier New" subset.

Workaround - fully embed the font:

var pdfFormatProvider = new PdfFormatProvider();
pdfFormatProvider.ExportSettings.FontEmbeddingType = FontEmbeddingType.Full;

NOTE: There are reports for other fonts' subset, e.g. "ZapfDingbats" font.

Completed
Last Updated: 06 Aug 2026 09:48 by ADMIN
Release 2026.2.519 (2026 Q2)
Code to reproduce: 
            Workbook wb = new Workbook();
            Worksheet worksheet = wb.Worksheets.Add(); 
            PatternFill fill = new PatternFill(PatternType.DiagonalStripe, Colors.Red, Colors.Transparent);
            worksheet.Cells[0, 0].SetFill(fill);

            string outputFilePath = "Sample.pdf";
            File.Delete(outputFilePath);
            Telerik.Windows.Documents.Spreadsheet.FormatProviders.Pdf.PdfFormatProvider pdfFormatProvider =
                new Telerik.Windows.Documents.Spreadsheet.FormatProviders.Pdf.PdfFormatProvider(); 
          
            //export to file
            using (Stream output = File.OpenWrite(outputFilePath))
            {
                pdfFormatProvider.Export(wb, output, TimeSpan.FromSeconds(10));
            }

            Process.Start(new ProcessStartInfo() { FileName = outputFilePath, UseShellExecute = true });
Completed
Last Updated: 06 Aug 2026 09:47 by ADMIN
Release 2026.2.519 (2026 Q2)
Grid PDF Export fails on Blazor WASM with CryptographicException: MD5.

Root Cause: 
PdfExportContext.CreateDocumentId() calls System.Security.Cryptography.MD5.Create(). MD5 is not available in the .NET WASM runtime by default and throws CryptographicException.
Completed
Last Updated: 06 Aug 2026 05:45 by ADMIN
Release 2026.3.805 (2026 Q3)

When there is an abstractNum defined with the same abstractNumId in word\glossary\numbering.xml and in the word\numbering.xml, a "System.ArgumentException: An item with the same key has already been added." exception is thrown.

In other cases, the import overwrites the styles from the main document part with the ones defined in the glossary or fails to import different parts of the content. 

Workaround: Delete the glossary files:

string path = "File.docx";
using (Stream str = new FileStream(path, FileMode.OpenOrCreate, FileAccess.ReadWrite))
{
	using (ZipArchive archive = ZipArchive.Update(str, null))
	{
		foreach (ZipArchiveEntry entry in archive.Entries.ToList())
		{
			if (entry.FullName.Contains("glossary/"))
			{
				entry.Delete();
			}
		}
	}

	DocxFormatProvider provider = new DocxFormatProvider();
	RadFlowDocument flowDocument = provider.Import(str, null);
}

Completed
Last Updated: 06 Aug 2026 05:45 by ADMIN
Release 2026.3.805 (2026 Q3)
LineInfo objects are not cleared when there are tables in the document being exported to PDF which leads to OutOfMemoryException.
Completed
Last Updated: 06 Aug 2026 05:45 by ADMIN
Release 2026.3.805 (2026 Q3)
ADMIN
Created by: Deyan
Comments: 2
Category: SpreadProcessing
Type: Feature Request
23
Add support for array formulas (CellFormulaType "array"). These formulas can accept as parameters and return results containing whole arrays (one- or two- dimensional) of data. In MS Excel, such formulas are inserted with CTRL + SHIFT + Enter, and visualized enclosed with curly brackets ('{' and '}'). 
Completed
Last Updated: 06 Aug 2026 05:45 by ADMIN
Release 2026.3.805 (2026 Q3)

Importing an XLSX workbook can crash with System.ArgumentNullException: Value cannot be null. Parameter name: key during Workbook.ResumeCalculationMapRegistration().

Root cause:
• The XLSX import pipeline queued null RadExpression entries into pendingCalculationMapExpressions.
• CalculationMap.AddBatch() passed those entries into ExpressionDependencyMap.AddExpressionsBatch().
• GetOrCreateNodeWithCache() then called Dictionary.TryGetValue() with a null key, which threw the exception.
Completed
Last Updated: 06 Aug 2026 05:45 by ADMIN
Release 2026.3.805 (2026 Q3)
Converting table with custom borders to PDF does not work
Completed
Last Updated: 06 Aug 2026 05:45 by ADMIN
Release 2026.3.805 (2026 Q3)
CellSelection.SetValue method causes memory leak of CellReferenceRangeExpression objects in some cases when cell value is referenced by formulas. The memory leak is small, but the remaining CellReferenceRangeExpression continue to listen to some events, causing performance issues when their number become large - the time to set the value increases with each set.
Completed
Last Updated: 06 Aug 2026 05:45 by ADMIN
Release 2026.3.805 (2026 Q3)
Corrupted character spacing when exporting PDF/A compliance document with embedded subset fonts.
Completed
Last Updated: 06 Aug 2026 05:45 by ADMIN
Release 2026.3.805 (2026 Q3)
The executing of the PostScriptReader`s Read method takes a lot of time when iterating content streams with many Path geometries.
Completed
Last Updated: 06 Aug 2026 05:45 by ADMIN
Release 2026.3.805 (2026 Q3)

When opening an Xlsx file with conditional formatting I get an Exception:

"System.ArgumentNullException: 'Value cannot be null. (Parameter 'formatting')'

at Telerik.Windows.Documents.Spreadsheet.Model.ConditionalFormattings.ConditionalFormattingDxfRule..ctor(DifferentialFormatting formatting)
   at Telerik.Windows.Documents.Spreadsheet.FormatProviders.OpenXml.Xlsx.Model.Elements.Worksheets.ConditionalFormattingRuleElement.GetRule(DifferentialFormatting formatting)
   at Telerik.Windows.Documents.Spreadsheet.FormatProviders.OpenXml.Xlsx.Model.Elements.Worksheets.ConditionalFormattingRuleElement.OnAfterRead(IXlsxWorksheetImportContext context)
   at Telerik.Windows.Documents.FormatProviders.OpenXml.Model.Elements.OpenXmlElementBase.ReadChildElements(IOpenXmlReader reader, IOpenXmlImportContext context)
   at Telerik.Windows.Documents.FormatProviders.OpenXml.Model.Elements.OpenXmlElementBase.Read(IOpenXmlReader reader, IOpenXmlImportContext context)
   at Telerik.Windows.Documents.FormatProviders.OpenXml.Model.Elements.OpenXmlElementBase.ReadChildElements(IOpenXmlReader reader, IOpenXmlImportContext context)
   at Telerik.Windows.Documents.FormatProviders.OpenXml.Model.Elements.OpenXmlElementBase.Read(IOpenXmlReader reader, IOpenXmlImportContext context)
   at Telerik.Windows.Documents.FormatProviders.OpenXml.OpenXmlImporter`1.ImportPartFromArchive(ZipArchiveEntry zipEntry, PartBase part, IOpenXmlImportContext context)
   at Telerik.Windows.Documents.FormatProviders.OpenXml.OpenXmlImporter`1.Import(Stream input, IOpenXmlImportContext context)
   at Telerik.Windows.Documents.Spreadsheet.FormatProviders.OpenXml.Xlsx.XlsxFormatProvider.ImportOverride(Stream input)
   at WpfApp1.MainWindow.StartExcel() in C:\Users\larse\source\repos\WpfApp1\MainWindow.xaml.cs:line 49"

To quote my colleage: "After dissecting the Excel template file, I have isolated what is causing the issue. If conditional formatting is used to disable cell boarders it results in the error, if the conditional formatting is updated to turn the necessary borders white, instead of disabling the report exports correctly, the following screenshot also explains."

Completed
Last Updated: 06 Aug 2026 05:45 by ADMIN
Release 2026.3.805 (2026 Q3)
Reading a password protected archive by passing a wrong password doesn't notify the user that the password is wrong. Accessing one of the entries in the archive throws a generic "Invalid data" exception.

Steps to reproduce:
1. Create a zip file with password.
2. Open the same archive with the API passing wrong password and then try to one of the entries.
Observed: InvalidDataException is thrown when trying to read one of the entries in the archive.
Expected: The exception should be more meaningful and if possible occur when reading the archive. There should be API allowing to check if the password is correct.
Completed
Last Updated: 24 Jul 2026 06:10 by ADMIN
Release 2026.2.723 (2026 Q2)
ADMIN
Created by: Mihail
Comments: 2
Category: WordsProcessing
Type: Feature Request
13

Text frames are paragraphs of text in a document which are positioned in a separate region or frame in the document and can be positioned with a specific size and position relative to non-frame paragraphs in the current document. More information about it is available in section 22.9.2.18 ST_XAlign (Horizontal Alignment Location) of Open Office XML.

Completed
Last Updated: 24 Jul 2026 06:10 by ADMIN
Release 2026.2.723 (2026 Q2)
When table with table border without color set is created (the color is null), and the document is exported to PDF, ArgumentNullException is thrown. 

Workaround: Explicitly set a color where the color is null.
private void PdfExport()
{
	var tables = this.document.EnumerateChildrenOfType<Table>();

	foreach (var table in tables)
	{
		TableBorders coloredClone = this.CopyTableBorders_SetColorWhenOmitted(table);
		table.Borders = coloredClone;
		
		using (Stream output = new FileStream(fileName, FileMode.OpenOrCreate))
		{
			provider.Export(this.document, output);
		}
	}
}

private TableBorders CopyTableBorders_SetColorWhenOmitted(Table table)
{
	var leftBorder = new Border(table.Borders.Left.Thickness,
				  table.Borders.Left.Style,
				  table.Borders.Left.Color ?? new ThemableColor(Colors.Transparent),
				  table.Borders.Left.Shadow,
				  table.Borders.Left.Frame,
				  table.Borders.Left.Spacing);

	var rightBorder = new Border(table.Borders.Right.Thickness,
				  table.Borders.Right.Style,
				  table.Borders.Right.Color ?? new ThemableColor(Colors.Transparent),
				  table.Borders.Right.Shadow,
				  table.Borders.Right.Frame,
				  table.Borders.Right.Spacing);

	var bottomBorder = new Border(table.Borders.Bottom.Thickness,
				table.Borders.Bottom.Style,
				table.Borders.Bottom.Color ?? new ThemableColor(Colors.Transparent),
				table.Borders.Bottom.Shadow,
				table.Borders.Bottom.Frame,
				table.Borders.Bottom.Spacing);

	var topBorder = new Border(table.Borders.Top.Thickness,
				table.Borders.Top.Style,
				table.Borders.Top.Color ?? new ThemableColor(Colors.Transparent),
				table.Borders.Top.Shadow,
				table.Borders.Top.Frame,
				table.Borders.Top.Spacing);

	var insideHorizontalBorder = new Border(table.Borders.InsideHorizontal.Thickness,
			 table.Borders.InsideHorizontal.Style,
			 table.Borders.InsideHorizontal.Color ?? new ThemableColor(Colors.Transparent),
			 table.Borders.InsideHorizontal.Shadow,
			 table.Borders.InsideHorizontal.Frame,
			 table.Borders.InsideHorizontal.Spacing);

	var insideVerticalBorder = new Border(table.Borders.InsideVertical.Thickness,
			table.Borders.InsideVertical.Style,
			table.Borders.InsideVertical.Color ?? new ThemableColor(Colors.Transparent),
			table.Borders.InsideVertical.Shadow,
			table.Borders.InsideVertical.Frame,
			table.Borders.InsideVertical.Spacing);

	var tableBorders = new TableBorders(leftBorder, topBorder, rightBorder, bottomBorder, insideHorizontalBorder, insideVerticalBorder);

	return tableBorders;
}
Completed
Last Updated: 24 Jul 2026 06:10 by ADMIN
Release 2026.2.723 (2026 Q2)
ADMIN
Created by: Tanya
Comments: 5
Category: WordsProcessing
Type: Feature Request
23
Add support for horizontal lines in documents.

In DOCX, such lines are defined using the legacy VML definitions:
<w:pict w14:anchorId="324D5836">
  <v:rect id="_x0000_i1025" style="width:0;height:1.5pt" o:hralign="center" o:hrstd="t" o:hr="t" fillcolor="#a0a0a0" stroked="f"/>
</w:pict>
The definitions above and the <hr/> HTML tag are currently not supported and skipped on import, leading to missing horizontal lines in the document.
Completed
Last Updated: 24 Jul 2026 06:10 by ADMIN
Release 2026.2.723 (2026 Q2)
Provide a consistent API for cloning document elements. Currently, we have a public API for cloning documents but not their elements. 
1 2 3 4 5 6