Bug Report T304030
Visible to All Users

KeyNotFoundException when XtraSpreadsheet is saved to Excel

created 9 years ago

Hello,

We have a problem when saving a spreadhseet document to file.

Step to duplicate :

1 . Use your demo application open my attached Excel file

  1. Save As the file in xlsx format. Then use Excel 2013 open the new file, Excel will tell you that  the file having problem.

  2. Save As the file in Xls format. We will have exception belows:

See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.Collections.Generic.KeyNotFoundException: The given key was not present in the dictionary.
   at System.Collections.Generic.Dictionary`2.get_Item(TKey key)
   at DevExpress.XtraSpreadsheet.Export.Xls.ExportXlsStyleSheet.GetXFIndex(CellStyleBase style)
   at DevExpress.XtraSpreadsheet.Export.Xls.XlsStylesExporter.WriteXFs()
   at DevExpress.XtraSpreadsheet.Export.Xls.XlsStylesExporter.WriteContent()
   at DevExpress.XtraSpreadsheet.Export.Xls.XlsGlobalsExporter.WriteContent()
   at DevExpress.XtraSpreadsheet.Export.Xls.XlsExporter.Export()
   at DevExpress.XtraSpreadsheet.Export.Xls.XlsExporter.Export(Stream outputStream)
   at DevExpress.XtraSpreadsheet.API.Internal.InternalAPI.SaveDocumentXlsContent(Stream stream, XlsDocumentExporterOptions options)
   at DevExpress.XtraSpreadsheet.Export.XlsDocumentExporter.SaveDocument(IDocumentModel documentModel, Stream stream, IExporterOptions options)
   at DevExpress.Office.Internal.ExportHelper`2.Export(Stream stream, TFormat format, String targetUri, IExportManagerService`2 exportManagerService, Encoding encoding)
   at DevExpress.Office.Model.DocumentModelBase`1.SaveDocument(Stream stream, TFormat documentFormat, String targetUri, Encoding encoding)
   at DevExpress.Office.Model.DocumentModelBase`1.SaveDocument(Stream stream, TFormat documentFormat, String targetUri)
   at DevExpress.XtraSpreadsheet.Internal.InnerSpreadsheetDocumentServer.SaveDocumentCore(Stream stream, DocumentFormat documentFormat, String targetUri)
   at DevExpress.XtraSpreadsheet.Internal.InnerSpreadsheetDocumentServer.SaveDocument(String fileName, DocumentFormat documentFormat)
   at DevExpress.XtraSpreadsheet.Internal.InnerSpreadsheetControl.SaveDocumentAs(IWin32Window parent)
   at DevExpress.XtraSpreadsheet.Internal.InnerSpreadsheetControl.SaveDocumentAs()
   at DevExpress.XtraSpreadsheet.Commands.SaveDocumentAsCommand.ExecuteCore(ICommandUIState state)
   at DevExpress.XtraSpreadsheet.Commands.SaveDocumentAsCommandBase.ForceExecute(ICommandUIState state)
   at DevExpress.Utils.Commands.Command.Execute()
   at DevExpress.XtraBars.Commands.ControlCommandBarButtonItem`2.InvokeCommand()
   at DevExpress.XtraBars.Commands.CommandBasedBarButtonItem.DevExpress.XtraBars.Commands.ICommandBarItem.InvokeCommand()
   at DevExpress.XtraBars.Commands.CommandBarController.InvokeItemCommand(ICommandBarItem item)
   at DevExpress.XtraBars.Commands.CommandBarController.HandleButtonBarItemClick(Object sender, ItemClickEventArgs e)
   at DevExpress.XtraBars.BarItem.OnClick(BarItemLink link)
   at DevExpress.XtraBars.BarBaseButtonItem.OnClick(BarItemLink link)
   at DevExpress.XtraBars.BarButtonItem.OnClick(BarItemLink link)
   at DevExpress.XtraBars.BarItemLink.OnLinkClick()
   at DevExpress.XtraBars.BarButtonItemLink.OnLinkClick()
   at DevExpress.XtraBars.BarItemLink.OnLinkAction(BarLinkAction action, Object actionArgs)
   at DevExpress.XtraBars.BarButtonItemLink.OnLinkAction(BarLinkAction action, Object actionArgs)
   at DevExpress.XtraBars.BarItemLink.OnLinkActionCore(BarLinkAction action, Object actionArgs)
   at DevExpress.XtraBars.ViewInfo.BarSelectionInfo.ClickLink(BarItemLink link)
   at DevExpress.XtraBars.ViewInfo.BarSelectionInfo.UnPressLink(BarItemLink link)
   at DevExpress.XtraBars.Ribbon.Handler.BaseRibbonHandler.OnUnPressItem(DXMouseEventArgs e, RibbonHitInfo hitInfo)
   at DevExpress.XtraBars.Ribbon.Handler.BaseRibbonHandler.OnUnPress(DXMouseEventArgs e, RibbonHitInfo hitInfo)
   at DevExpress.XtraBars.Ribbon.Handler.BaseRibbonHandler.OnMouseUp(DXMouseEventArgs e)
   at DevExpress.XtraBars.Ribbon.Handler.RibbonHandler.OnMouseUp(DXMouseEventArgs e)
   at DevExpress.XtraBars.Ribbon.RibbonControl.OnMouseUp(MouseEventArgs e)
   at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
   at System.Windows.Forms.Control.WndProc(Message& m)
   at DevExpress.Utils.Controls.ControlBase.WndProc(Message& m)
   at DevExpress.XtraBars.Ribbon.RibbonControl.WndProc(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

************** Loaded Assemblies **************
mscorlib
    Assembly Version: 4.0.0.0
    Win32 Version: 4.0.30319.34014 built by: FX45W81RTMGDR
    CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v4.0.30319/mscorlib.dll
----------------------------------------
SpreadsheetMainDemo
    Assembly Version: 1.0.5743.35271
    Win32 Version: 1.0.5743.35271
    CodeBase: file:///C:/Users/Public/Documents/DevExpress%20Demos%2015.1/Components/WinForms/Bin/SpreadsheetMainDemo.exe
----------------------------------------
DevExpress.BonusSkins.v15.1
    Assembly Version: 15.1.7.0
    Win32 Version: 15.1.7.0
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/DevExpress.BonusSkins.v15.1/v4.0_15.1.7.0__b88d1754d700e49a/DevExpress.BonusSkins.v15.1.dll
----------------------------------------
DevExpress.Tutorials.v15.1
    Assembly Version: 15.1.7.0
    Win32 Version: 15.1.7.0
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/DevExpress.Tutorials.v15.1/v4.0_15.1.7.0__b88d1754d700e49a/DevExpress.Tutorials.v15.1.dll
----------------------------------------
System
    Assembly Version: 4.0.0.0
    Win32 Version: 4.0.30319.34239 built by: FX452RTMGDR
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Core
    Assembly Version: 4.0.0.0
    Win32 Version: 4.0.30319.33440 built by: FX45W81RTMREL
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll
----------------------------------------
DevExpress.XtraBars.v15.1
    Assembly Version: 15.1.7.0
    Win32 Version: 15.1.7.0
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/DevExpress.XtraBars.v15.1/v4.0_15.1.7.0__b88d1754d700e49a/DevExpress.XtraBars.v15.1.dll
----------------------------------------
DevExpress.Utils.v15.1
    Assembly Version: 15.1.7.0
    Win32 Version: 15.1.7.0
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/DevExpress.Utils.v15.1/v4.0_15.1.7.0__b88d1754d700e49a/DevExpress.Utils.v15.1.dll
----------------------------------------
System.Windows.Forms
    Assembly Version: 4.0.0.0
    Win32 Version: 4.0.30319.34250 built by: FX452RTMGDR
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System.Drawing
    Assembly Version: 4.0.0.0
    Win32 Version: 4.0.30319.34262 built by: FX452RTMGDR
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
DevExpress.XtraEditors.v15.1
    Assembly Version: 15.1.7.0
    Win32 Version: 15.1.7.0
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/DevExpress.XtraEditors.v15.1/v4.0_15.1.7.0__b88d1754d700e49a/DevExpress.XtraEditors.v15.1.dll
----------------------------------------
System.Configuration
    Assembly Version: 4.0.0.0
    Win32 Version: 4.0.30319.33440 built by: FX45W81RTMREL
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
System.Xml
    Assembly Version: 4.0.0.0
    Win32 Version: 4.0.30319.34230 built by: FX452RTMGDR
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
DevExpress.Data.v15.1
    Assembly Version: 15.1.7.0
    Win32 Version: 15.1.7.0
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/DevExpress.Data.v15.1/v4.0_15.1.7.0__b88d1754d700e49a/DevExpress.Data.v15.1.dll
----------------------------------------
System.Data.Linq
    Assembly Version: 4.0.0.0
    Win32 Version: 4.0.30319.33440
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Data.Linq/v4.0_4.0.0.0__b77a5c561934e089/System.Data.Linq.dll
----------------------------------------
DevExpress.DemoData.v15.1
    Assembly Version: 15.1.7.0
    Win32 Version: 15.1.7.0
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/DevExpress.DemoData.v15.1/v4.0_15.1.7.0__b88d1754d700e49a/DevExpress.DemoData.v15.1.dll
----------------------------------------
DevExpress.DemoData.v15.1.Core
    Assembly Version: 15.1.7.0
    Win32 Version: 15.1.7.0
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/DevExpress.DemoData.v15.1.Core/v4.0_15.1.7.0__b88d1754d700e49a/DevExpress.DemoData.v15.1.Core.dll
----------------------------------------
PresentationCore
    Assembly Version: 4.0.0.0
    Win32 Version: 4.0.30319.34004 built by: FX45W81RTMGDR
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_32/PresentationCore/v4.0_4.0.0.0__31bf3856ad364e35/PresentationCore.dll
----------------------------------------
WindowsBase
    Assembly Version: 4.0.0.0
    Win32 Version: 4.0.30319.34004 built by: FX45W81RTMGDR
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/WindowsBase/v4.0_4.0.0.0__31bf3856ad364e35/WindowsBase.dll
----------------------------------------
DevExpress.XtraNavBar.v15.1
    Assembly Version: 15.1.7.0
    Win32 Version: 15.1.7.0
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/DevExpress.XtraNavBar.v15.1/v4.0_15.1.7.0__b88d1754d700e49a/DevExpress.XtraNavBar.v15.1.dll
----------------------------------------
System.Data
    Assembly Version: 4.0.0.0
    Win32 Version: 4.0.30319.33440 built by: FX45W81RTMREL
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_32/System.Data/v4.0_4.0.0.0__b77a5c561934e089/System.Data.dll
----------------------------------------
DevExpress.XtraLayout.v15.1
    Assembly Version: 15.1.7.0
    Win32 Version: 15.1.7.0
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/DevExpress.XtraLayout.v15.1/v4.0_15.1.7.0__b88d1754d700e49a/DevExpress.XtraLayout.v15.1.dll
----------------------------------------
UIAutomationClient
    Assembly Version: 4.0.0.0
    Win32 Version: 4.0.30319.33440 built by: FX45W81RTMREL
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/UIAutomationClient/v4.0_4.0.0.0__31bf3856ad364e35/UIAutomationClient.dll
----------------------------------------
DevExpress.XtraSpreadsheet.v15.1
    Assembly Version: 15.1.7.0
    Win32 Version: 15.1.7.0
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/DevExpress.XtraSpreadsheet.v15.1/v4.0_15.1.7.0__b88d1754d700e49a/DevExpress.XtraSpreadsheet.v15.1.dll
----------------------------------------
DevExpress.Spreadsheet.v15.1.Core
    Assembly Version: 15.1.7.0
    Win32 Version: 15.1.7.0
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/DevExpress.Spreadsheet.v15.1.Core/v4.0_15.1.7.0__b88d1754d700e49a/DevExpress.Spreadsheet.v15.1.Core.dll
----------------------------------------
DevExpress.Office.v15.1.Core
    Assembly Version: 15.1.7.0
    Win32 Version: 15.1.7.0
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/DevExpress.Office.v15.1.Core/v4.0_15.1.7.0__b88d1754d700e49a/DevExpress.Office.v15.1.Core.dll
----------------------------------------
DevExpress.Printing.v15.1.Core
    Assembly Version: 15.1.7.0
    Win32 Version: 15.1.7.0
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/DevExpress.Printing.v15.1.Core/v4.0_15.1.7.0__b88d1754d700e49a/DevExpress.Printing.v15.1.Core.dll
----------------------------------------
System.Web
    Assembly Version: 4.0.0.0
    Win32 Version: 4.0.30319.34248 built by: FX452RTMGDR
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_32/System.Web/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Web.dll
----------------------------------------
DevExpress.RichEdit.v15.1.Core
    Assembly Version: 15.1.7.0
    Win32 Version: 15.1.7.0
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/DevExpress.RichEdit.v15.1.Core/v4.0_15.1.7.0__b88d1754d700e49a/DevExpress.RichEdit.v15.1.Core.dll
----------------------------------------
DevExpress.XtraRichEdit.v15.1
    Assembly Version: 15.1.7.0
    Win32 Version: 15.1.7.0
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/DevExpress.XtraRichEdit.v15.1/v4.0_15.1.7.0__b88d1754d700e49a/DevExpress.XtraRichEdit.v15.1.dll
----------------------------------------
DevExpress.XtraPrinting.v15.1
    Assembly Version: 15.1.7.0
    Win32 Version: 15.1.7.0
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/DevExpress.XtraPrinting.v15.1/v4.0_15.1.7.0__b88d1754d700e49a/DevExpress.XtraPrinting.v15.1.dll
----------------------------------------
DevExpress.Charts.v15.1.Core
    Assembly Version: 15.1.7.0
    Win32 Version: 15.1.7.0
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/DevExpress.Charts.v15.1.Core/v4.0_15.1.7.0__b88d1754d700e49a/DevExpress.Charts.v15.1.Core.dll
----------------------------------------
DevExpress.XtraCharts.v15.1
    Assembly Version: 15.1.7.0
    Win32 Version: 15.1.7.0
    CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/DevExpress.XtraCharts.v15.1/v4.0_15.1.7.0__b88d1754d700e49a/DevExpress.XtraCharts.v15.1.dll
----------------------------------------

Comments (1)
DevExpress Support Team 9 years ago

    Hello,
    The file you attached is not a valid OpenXML file. To check this, you can use a free Open XML SDK Productivity Tool. I have attached a screenshot to demonstrate the issue.
    We will further research this behavior and introduce certain modifications to correctly re-save such files in the Spreadsheet control.
    We will notify you as soon as we make any progress.

    Answers approved by DevExpress Support

    created 9 years ago

    We have fixed the issue described in this ticket and will include the fix in our next maintenance update. To apply this solution before the official update, request a hotfix by clicking the corresponding link for product versions you require.

    Note: Hotfixes may be unavailable for beta versions and updates that are about to be released.

      Disclaimer: The information provided on DevExpress.com and affiliated web properties (including the DevExpress Support Center) is provided "as is" without warranty of any kind. Developer Express Inc disclaims all warranties, either express or implied, including the warranties of merchantability and fitness for a particular purpose. Please refer to the DevExpress.com Website Terms of Use for more information in this regard.

      Confidential Information: Developer Express Inc does not wish to receive, will not act to procure, nor will it solicit, confidential or proprietary materials and information from you through the DevExpress Support Center or its web properties. Any and all materials or information divulged during chats, email communications, online discussions, Support Center tickets, or made available to Developer Express Inc in any manner will be deemed NOT to be confidential by Developer Express Inc. Please refer to the DevExpress.com Website Terms of Use for more information in this regard.