EPR类企业管理系统

在我们现有系统基础上或全新开发,提供定制服务
为您的企业高效快速实施ERP,WMS,MES,CRM管理系统
全面管控物料仓库、销售业务、采购业务、仓库业务
生产过程、质量检验、组织架构、业务报表


定制
QQ:460-3528

开发
QQ群:3360-90194

源码
微信:136-3650-3721

数据绑定方面

在使用代表Analysis(IAnalysisInfo)对象的分析编辑器之前,应为其创建数据源。本主题详细介绍如何实现分析编辑器的适当数据绑定行为。在阅读本主题之前,建议您参考“数据透视图”模块上的概述(请参阅“数据透视图模块概述”)。

默认行为

在执行BindAnalysisData Action(BindAnalysisData)之前,不会创建用于分析编辑器的数据源。此外,更改当前Analysis(IAnalysisInfo)对象的CriteriaDataType属性后,不会更新数据源。要对其进行更新,您应该执行UnbindAnalysisDataUnbindAnalysisData),然后执行BindAnalysisData操作。

此行为是经过特殊设计的,如果每次在当前Analysis对象中更改某些内容时加载大量数据,则可以避免较长的等待时间。该BindAnalysisDataUnbindAnalysisData操作使用分析编辑器的IsDataSourceReady标志允许或禁止数据加载。默认情况下,此标志设置为true。但是,包含这些Action的AnalysisDataBindController会在激活时将此标志设置为false。因此,此Controller及其操作完全管理分析编辑器数据源的更新。您可以更改此行为。在下面,您将找到执行此操作的几种方法。

删除绑定分析数据和取消绑定数据分析操作

如果需要,可以完全删除BindAnalysisDataUnbindAnalysisData操作。这意味着您应该为Analysis对象停用它们。为此,请停用包含这些操作的AnalysisDataBindController。您可以使用为Analysis对象激活的任何Controller来执行此操作。以下代码演示了如何通过继承AnalysisDataBindController本身来实现此目的:

public class DisableAnalysisDataBindController : AnalysisDataBindController {
   public DisableAnalysisDataBindController() {
      Active["Disabled"] = false;
   }
}

禁用AnalysisDataBindController时,IsDataSourceReady标志保持设置为true。这将导致在创建分析编辑器的控件时创建数据源,并在更改当前Analysis对象的CriteriaDataType属性时对其进行更新。

实施自定义方法来绑定数据

使用分析编辑器的IsDataSourceReady标志,可以根据需要管理数据绑定。以下代码演示了如何使用Analysis对象调用明细视图时如何自定义AnalysisDataBindController来加载数据源:

public partial class ViewController1 : AnalysisDataBindController {
   protected override void OnActivated() {
      base.OnActivated();
      analysisEditor.IsDataSourceReady = true;
      UpdateBindUnbindActionsState();
   }
}

要了解如何从自定义控制器访问分析编辑器,请参阅“数据透视图模块概述”主题。

转载保留此链接,注明出处