2015-06-02 31 views
1

我是kendo UI的新手,我正在使用Kendo樞軸網格。根據我的客戶要求,我保存了kendo Pivot Grid的行和列狀態,但他也想保存行和列的排序順序。我正在關注Pivot Grid的http://demos.telerik.com/kendo-ui/pivotgrid/index演示。是否可以保存Kendo UI樞紐網格的行和列的排序順序?

我得到網格的列如下: -

var datasource1 = $("#pivotgrid").data("kendoPivotGrid").dataSource; 
var Columns = datasource1._columns; 

var CommaSapratedListOfColumns = ""; 
for (var i = 0; i < Columns.length; i++) { 
    debugger; 
    var SingleColumn = Columns[i].name; 
    CommaSapratedListOfColumns += SingleColumn + ","; 
} 
CommaSapratedListOfColumns = CommaSapratedListOfColumns.replace(/,\s*$/, ""); 

和董同爲行,然後將其保存到一個文本文件,並在初始化網格我剛剛得到的保存時間從文件中列和行的列表,並把它們在網格配置動態如下:

$.ajax({ 
    url: '@Url.Action("ReadFile","PivoteGrid")'+'?file1=true&file2=true', 
    type: 'get', 
    async:false, 
    dataType: 'json', 
    success: function (data) { 
     debugger; 
     if (data.file1!="") { 
      savedColumns = data.file1.split(','); 
     } 
     if (data.file2 != "") 
     { 
      savedRows = data.file2.split(','); 
     }       


     var pivotgrid = $("#pivotgrid").kendoPivotGrid({ 
       filterable: true, 
       sortable: true, 
       columnWidth: 200, 
       height: 580, 
       dataSource: { 
        type: "xmla", 
        columns: savedColumns,//List of Saved Column here 
        rows: savedRows,//list of saved rows here 

現在我需要保存排序順序也是如此,這是可能保存得劍道UI透視網格行的排序順序和列,如果是的話,如果沒有,那麼爲什麼不呢?任何建議將不勝感激!如果你需要更多的解釋我在這裏!提前致謝 !因爲他們是內部屬性

回答

2

先不要使用帶有下劃線像datasource._columns前綴屬性,他們可以在未來的版本中改變,使用公共的API,而不是像dataSource.columns()。見Docs

爲了節省列和行:

var columnsPivotCurrent = []; 
var rowsPivotCurrent = []; 
columnsPivotCurrent = dataSource.columns(); 
rowsPivotCurrent = dataSource.rows(); 

var pivotgrid = $("#pivotgrid").kendoPivotGrid({ 
    filterable: true, 
    sortable: true, 
    columnWidth: 200, 
    height: 580, 
    dataSource: { 
     type: "xmla", 
     columns: columnsPivotCurrent,//List of Saved Column here 
     rows: rowsPivotCurrent,//list of saved rows here 
.. 

對於這個排序現在無法實現,因爲PivotGrid缺少此功能Persist State Demo這是供電網組件