4

データセットを Telerik RadGrid から Kendo Grid に移行して、並べ替えを設定しようとするタスクに取り組んでいます。ほとんどすべての列でソートが正常に機能しましたが、一部の列には「あいまいな」(同じ名前の) データフィールド名があります。RadGrid は、'UniqueName' を確立してどの列を指定できるようにするかによって、これを説明します。

剣道グリッドの例

    var assignmentColumns = 
    [
        { title: "Last Note Date", field: "NoteDateTime", template: '#= kendo.toString( toDate(NoteDateTime), "M/dd/yyyy h:mmtt" ) #' }
    ];



        var gridDataSource = new kendo.data.DataSource({
            transport: {
                read: {
                    url: '-',
                    type: 'POST',
                    contentType: 'application/json'
                },
                parameterMap: function (options) {
                    return JSON.stringify(options);
                }
            },
            schema: {
                data: 'data',
                total: 'totalItems'
            },
            serverPaging: true,
            pageSize: 10,
            serverFiltering: true,
            serverSorting: true
        });


        $grid.kendoGrid({

            dataSource: gridDataSource,
            pageable: true,
            scrollable: false,
            sortable: {
                allowUnsort: true
            },
            columns: assignmentColumns
        });

Telerik の作業例

<telerik:RadGrid ID="radGrid_Commentary" AllowSorting="true">
    <MasterTableView>
        <Columns>  
            <telerik:GridBoundColumn DataField="NoteDateTime" UniqueName="cg.Date" HeaderText="Date" DataFormatString="{0:MM/dd/yyyy}" />
        </Columns>
    </MasterTableView>
</telerik:RadGrid>

kendogrid 列に「UniqueName」を指定する方法について誰か考えがありますか?

4

1 に答える 1

3

さて、さらに数時間考えていじった後、私はそれを理解しました. テンプレートは画面に表示されるものを処理します。フィールドは、並べ替え/フィルターがサーバー側の並べ替え/フィルター処理のために情報を返すときに使用するものです。私はおそらくこれをもっと早く理解するべきだったでしょうが、これが同じような脳のおならを経験している他の誰かを助けることができることを願っています.

上からの変更:

var assignmentColumns = 
[
    { title: "Last Note Date", field: "cg.Date", template: '#= kendo.toString( toDate(NoteDateTime), "M/dd/yyyy h:mmtt" ) #' }
];
于 2013-04-23T18:48:18.723 に答える