DevExpress GridControl导出ExportToXlsx 数字类型显示成货币格式

一直用Dev自带的Excel导出,因为简单……

DevExpress GridControl导出ExportToXlsx 数字类型显示成货币格式

直到发生了上面的问题,导出的Excel文件都会带上一种神秘的自定义格式,删除这个格式文件就正常了……

DevExpress GridControl导出ExportToXlsx 数字类型显示成货币格式

有网友列了个解决办法:

https://blog.csdn.net/weixin_30832351/article/details/94919252

无奈本人水平太low,在转格式的过程中遇到了莫名困难,遂继续研究,

发现有大神用PrintableComponentLink导出的,代码太长,没看下去……

在官方说明文档里,发现导出分为Data-aware export 和 WYSIWYG export 两种

https://docs.devexpress.com/WindowsForms/17733/controls-and-libraries/data-grid/export-and-printing/export-to-xls-and-xlsx-formats

估计是aware的太猛,把数据都当人民币了,那就用传统方式导出吧。

一顿操作找到如何设置,如下:

        public void ExportToExcel()
        {
            SaveFileDialog dlg = new SaveFileDialog();
            dlg.Title = "导出数据";
            dlg.Filter = "EXCEL文件|*.xlsx";
            dlg.FileName = tableTitle + ".xlsx";

            if (dlg.ShowDialog() != DialogResult.OK)
                return;

            DevExpress.XtraPrinting.XlsxExportOptionsEx options = new DevExpress.XtraPrinting.XlsxExportOptionsEx();
            options.ExportType = DevExpress.Export.ExportType.WYSIWYG;
            gridTable.ExportToXlsx(dlg.FileName, options);
        }

OK!虽然样式变了,不过目的达到了……

DevExpress GridControl导出ExportToXlsx 数字类型显示成货币格式

能够感觉到导出效率有所下降,而且官方推荐的Data-aware export,若有大神知道如何在Data-aware模式设置数字格式,恳请悉知~