zoukankan      html  css  js  c++  java
  • 如何提升在使用DevExpress 系列DataGrid的性能问题

    通常我们需要成批在绑定的时候更新Grid里面的数据.

    这时候两个方法尤其重要.

    BeginUpdate();

    EndUpdate();

    这两个方法可以减少很多不必要的时间.

    For ex:

    改正前

       PrintTicks("全选开始");
       DevExpress.Data.ColumnSortOrder sortOrder = xtraGridView.Columns["colSelect"].SortOrder;
       xtraGridView.Columns["colSelect"].SortOrder = DevExpress.Data.ColumnSortOrder.None;
       xtraGridView.CloseEditor();
       xtraGridView.UpdateCurrentRow();   
       //全选
       int intRowCount = xtraGridView.RowCount;
       for (int i = 0; i < intRowCount; i ++)
       {
        //取选择列并赋值
        xtraGridView.GetDataRow(i)["colSelect"] = true;

       }
       xtraGridView.CloseEditor();
       xtraGridView.UpdateCurrentRow();
       xtraGridView.Columns["colSelect"].SortOrder = sortOrder;
      PrintTicks("全选结束");

    =================================================

     调整后

       PrintTicks("全选开始");
       int intRowCount = xtraGridView.RowCount;
       
       //全选
       //启动批量更新
       xtraGridView.BeginUpdate();  
       for (int i = 0; i < intRowCount; i ++)
       {
        //取选择列并赋值
        xtraGridView.GetDataRow(i)["colSelect"] = true;
       }
       //结束批量更新
       xtraGridView.EndUpdate();

       PrintTicks("全选结束");

    性能差异:

      在Grid里面有100条以上的时候,第一种方法需要大概50秒,第二种方法用1秒.

      在SDK里面有讲到这个方法.

  • 相关阅读:
    CF Round #576 (Div. 2) Matching vs Independent Set
    Count on a tree
    2019hdu多校 AND Minimum Spanning Tree
    Pku2978 Colored stones
    2019hdu多校 Minimal Power of Prime
    微信小程序- app.wxss 全局样式与局部样式
    微信小程序-选择器
    微信小程序-视图层-样式导入和全局样式
    微信小程序视图层-rpx
    视觉上的透明效果
  • 原文地址:https://www.cnblogs.com/wildfish/p/400587.html
Copyright © 2011-2022 走看看