基本JS 2网格:保存/恢复列顺序和宽度?

时间:2019-08-22 19:34:12

标签: syncfusion

用例是:a)允许用户调整列的大小并对其重新排序,这是Grid可以做到的,然后由用户重置为其所拥有的内容。

我需要什么:我如何a)读取/设置列顺序和b)读取/设置列宽?如果有一个描述网格列属性和方法的文档,那就是我所需要的。或者,如果列宽和顺序存储在网格的其他位置,则该组件的文档。

谢谢

汉克

1 个答案:

答案 0 :(得分:1)

根据您的要求,在使用getPersistData和setProperties方法在Grid上执行了两项操作之后,我们已经完成了resize和reorder列的重置。在Grid的加载事件中,我们必须使用getPersistData(这是存储可行的重置网格属性的方法)在本地存储Grid属性,并且当我们重置列的位置和宽度时,可以使用setProperties方法将本地存储的网格属性绑定到Grid在网格中。请参阅网格代码示例和示例以获取更多信息。

 [Index.cshtml]

<ejs-grid id="Grid" dataSource="ViewBag.dataSource" allowReordering="true" allowResizing="true" load="onLoad">
    <e-grid-columns>
   .   .   .   . 
    </e-grid-columns>
</ejs-grid>



<script>

    function onLoad() {
        window.localStorage.setItem("gridPorps", this.getPersistData());  //Store the intial renderting Grid properties in global variable
    }

    document.getElementById("resetprops").addEventListener("click", function () {        
        var grid = (document.getElementById("Grid") as any).ej2_instances[0];
        grid.setProperties(JSON.parse(window.localStorage.getItem("gridPorps")));  //Bind the stored Grid properties in the Grid 
    });

示例链接: https://www.syncfusion.com/downloads/support/directtrac/252153/ze/filter_core-120629378.zip

其他如果您希望在重新排序和调整Grid列的大小后重置Grid列的位置和宽度。请与我们分享您的确切要求,这将有助于进一步验证。

如果您需要进一步的帮助,请与我们联系。

最好

Balaji S