首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是否有调用gridView.EndDataUpdate、gridView.EndUpdate、gridView.EndSummaryUpdate的订单?

是否有调用gridView.EndDataUpdate、gridView.EndUpdate、gridView.EndSummaryUpdate的订单?
EN

Stack Overflow用户
提问于 2012-08-08 04:08:21
回答 1查看 893关注 0票数 1

如果我想同时使用gridView.EndDataUpdate (gridView.BeginDataUpdate)gridView.EndSummaryUpdate (gridView.BeginSummaryUpdate),哪一个应该是正确的顺序?

订单1:

代码语言:javascript
复制
gridView.BeginDataUpdate();
gridView.BeginSummaryUpdate();
...
gridView.EndSummaryUpdate();
gridView.EndDataUpdate();

订单2:

代码语言:javascript
复制
gridView.BeginDataUpdate();
gridView.BeginSummaryUpdate();
...
gridView.EndDataUpdate();
gridView.EndSummaryUpdate();

当我应该使用gridView.EndUpdate (gridView.BeginUpdate)的时候,有什么顺序要求吗?

谢谢!!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-08-08 12:39:59

BaseView.BeginUpdate/BaseView.EndUpdate方法锁定视图并阻止后续的可视化更新。使用BeginUpdate和EndUpdate方法无法避免任何数据更新。相反,必须使用BaseView.BeginDataUpdateBaseView.EndDataUpdate方法。只要将摘要项添加到网格视图或修改其设置,网格就会自动重新计算摘要。若要在所有汇总项正确初始化之前阻止汇总计算,请使用BeginSummaryUpdateEndSummaryUpdate方法。

以下是所有这些方法用法的详细描述:

  • Batch Modifications Overview

在您的案例中,您可以使用可视化更新来封装数据和摘要更新,如下所示:

代码语言:javascript
复制
view.BeginUpdate();
try {
    ...view options modifications...

    view.BeginDataUpdate();
    try {
        ...data modifications...
    }
    finally{ view.EndDataUpdate(); } // real data update here

    view.BeginSummaryUpdate();
    try {
        ...summary modifications...
    }
    finally{ view.EndSummaryUpdate(); } // real summary recalculation

    ...another view options modifications...
}
finally{ view.EndUpdate(); } // real visual update
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11853314

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档