簡體   English   中英

將背景色應用於dxDataGrid控件並導出到Excel

[英]Apply background-color to dxDataGrid control and export to Excel

我在ASP.NET項目中使用DevExpress的dxDataGrid來顯示存儲在SQL Server數據庫中的某些數據。

以下代碼顯示了如何設置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);
            }
        }
    ]
});

這是dxDataGrid控件中的結果:

dxDataGrdi控件的結果

但是,當我“使用DevExpress功能”打開生成的文件時,得到的結果與屏幕截圖所示的結果不同(即,單元格具有值,但未應用任何樣式)

根據文檔 ,在將顏色應用於 dxDataGrid控件中的特定單元格之后,當打開導出的Excel文件時,該單元格不會獲得與dxDataGrid控件中所示的相同結果。

我的問題是:

  • 如何將樣式應用於dxDataGrid單元並將此類結果應用於生成的Excel文件?

不幸的是,根據DX支持人員論壇上最近(2016-09-20)的回復,DevExtreme套裝無法將dxDataGrid導出為出色的格式化格式。

見自己一面: https : //www.devexpress.com/Support/Center/Question/Details/T429240

如果您將DevEpress ASPxGridView控件與ASPxGridViewExporter一起使用,則可以在導出的Excel文檔中按單元格或每行自定義格式。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM