将背景颜色应用于dxDataGrid控件并导出到Excel

时间:2016-10-07 20:40:26

标签: javascript devexpress devextreme jszip

我在ASP.NET项目中使用DevExpress的parallelStream来显示存储在SQL Server数据库中的一些数据。

以下代码显示了我如何设置dxDataGrid控件以呈现数据:

dxDataGrid

这是// Variables. var vlrMin = []; var vlrMax = []; var vlr_to_match = 0; var colors = []; var final_rst = ""; // Add values to variables: vlrMin.push("9"); vlrMin.push("2"); vlrMin.push("9"); // Add values to variables: vlrMax.push("13"); vlrMax.push("7"); vlrMax.push("4"); colors.push('#ff0000'); colors.push('#92D050'); colors.push('#5B9BD5'); // Start configuration. $("#gridContainer").dxDataGrid({ dataSource: [{ "Dept": "Local services", "Employee": "John Doe", "TotalHours": "11" }], paging: { pageSize: 10 }, export: { allowExportSelectedData: true, enabled: true, fileName: 'Reporte 1', texts: { exportAll: 'Export all', exportSelectedRows: 'Export selected row(s).', exportTo: 'Export' }, }, searchPanel: { visible: true }, filterRow: { visible: true, showOperationChooser: true }, allowColumnReordering: true, grouping: { autoExpandAll: true }, groupPanel: { visible: true }, pager: { showPageSizeSelector: true, allowedPageSizes: [5, 10, 20], showInfo: true }, columns: ['Dept', 'Employee', { dataField: 'TotalHours', allowFiltering: true, allowSorting: true, cellTemplate: function(container, options) { /* Value to check if matches with the criteria. */ var vlr_to_match = options.value; /* Loop elements. */ for (var mn = 0; mn < vlrMin.length; mn++) { if (vlr_to_match >= vlrMin[mn] && vlr_to_match <= vlrMax[mn]) { final_rst = colors[mn]; break; } } /* Apply custom style to element. */ $('<span>').text(options.data.TotalHours) .attr('style', 'background-color: ' + final_rst) .appendTo(container); } } ] }); 控件中的结果:

Results from dxDataGrdi control

但是,当我使用DevExpress功能打开生成的文件时,我得不到截图中显示的相同结果(即;单元格有值,但没有应用样式)

根据documentationdxDataGrid控件中的apply a color to an specific cell之后,打开导出的Excel文件时,单元格的结果与{ {1}}控制。

我的问题是:

  • 如何将样式应用于dxDataGrid单元格并将此类结果应用于生成的Excel文件?

1 个答案:

答案 0 :(得分:0)

不幸的是,基于DX支持论坛中最新的(2016-09-20)回复,DevExtreme套装无法通过格式化将dxDataGrid导出为ex​​cel。

自己看看:https://www.devexpress.com/Support/Center/Question/Details/T429240

如果您将DevEpress ASPxGridView控件与ASPxGridViewExporter一起使用,则可以在每个单元格或每行导出的Excel文档中自定义格式。