Dataset客户端事件使用详解
请参考《Dorado5用户指南》的5.15主要JS事件。
Dataset Client端的事件中,比较容易明白和使用的有beforeInsert、afterInsert、beforeDelete、afterDelete、beforePost、afterPost、beforeCancel、afterCancel、beforeSelectionChange、afterSelectionChange、beforeFlushData、afterFlushData、onCreate、onActive,这些事件在client-api中说明得比较清楚。
我们来重点看一下Dataset除了上面提到的Client端事件之外的事件:
a) beforeScroll、afterScroll
请参考《Dorado5用户指南》的5.15主要JS事件。
这里想说明一点的是,通过afterScroll事件还可以做到对控件的状态等的控制。比如说在afterScroll事件里控制DataTable的某一行或者某一单元格的只读等等状态。
下面的afterScroll事件代码是控制某一行只读还是可编辑:
var record = dataset.getCurrent();
if(record){
var SEX = record.getValue("SEX");
if(SEX){
if(SEX=="false"){
dataset.setReadOnly(false);
}else{
dataset.setReadOnly(true);
}
}else{
dataset.setReadOnly(true);
}
}else{
dataset.setReadOnly(true);
}
|
把代码 中的dataset.setReadOnly换成dataset.getField(“name”). setReadOnly就可以控制某一单元格的可编辑性等等。
b) beforeChange、afterChange
请参考《Dorado5用户指南》的5.15主要JS事件。
beforeChange大多数用来做Field的Validators,一般用来验证新值符合条件不。
afterChange一般是用来对某个值改变之后触发其它的事件。
c) onGetValue、onSetValue
onGetValue是数据集中读取一个数值时触发,返回读到的数值。这个事件可以做一些字符的过滤或者经过处理的值返回。
onSetValue之前触发了beforeChange事件,之后触发了afterChange事件。这三个事件就各自分配了对新值的处理功能。beforeChange对新值做判断,onSetValue对新值在做处理,afterChange对因为新值触发其它事件。
这里要特别注意的是,要考虑一下这些事件里有没有一些代码可以会再触发本身的事件,比如说在beforeChange或者onSetValue或者afterChange(字段field1)中又执行了dataset.setValue(“field1”,value);这样的话就形成了死循环。一般的解决办法是通过dataset的事件开关disableEvents、enableEvents来处理。
d) onFilterRecord
当系统过滤记录集时触发,该事件的返回值为true表示当前处理的记录可见,否则该记录将被视为不可见。系统初始化的时候会对该事件执行一次。
分享到:
相关推荐
##### 4.4 Dataset客户端事件使用详解 Dataset提供了丰富的客户端事件,允许开发者在数据发生变化时执行自定义的操作。 **Dataset客户端事件**: - **disable**:禁用Dataset。 - **enable**:启用Dataset。 - **...
### Dataset详解:灵活应用DataSet,快速获取数据库中的数据 在.NET框架中,`DataSet`是一个核心组件,用于存储从数据库中检索出的数据,并提供了一种高效、灵活的方式来处理这些数据。`DataSet`的设计目的是为了在...
### DataSet用法详解 #### 一、概述 `DataSet`是ADO.NET中非常重要的组成部分,它主要用于存储和操作从数据库中获取的数据。`DataSet`是一个内存中的缓存数据存储器,能够脱离数据库独立存在,因此被称为离线数据...
### DataSet.GetChanges 方法详解 #### 一、概述 `DataSet.GetChanges` 方法是.NET Framework类库中的一个重要成员,主要用于从当前 `DataSet` 实例中获取一个包含所有更改的副本。这个副本可以用来进一步处理,...
### 关于 C# 中 Dataset 的使用实例解析 #### 一、概述 在 C# 编程语言中,处理数据时经常需要用到数据集(`DataSet`)这一数据结构。`DataSet` 是一种内存中的缓存机制,它能够存储来自数据库的数据,并提供类似...
- **安装DLL**:从提供的链接下载库,并将`bin`目录下的`Silverlight.DataSet.all.dll`添加到Silverlight客户端项目中;同时将`Silverlight.DataSetConnector.dll`添加到Web项目中。 - **配置数据库连接**:在Web...
对于使用C#语言进行开发的程序员来说,将DataSet类型的数据转换为JSON字符串是处理数据库查询结果的一个常见操作。下面,我们将深入探讨这一过程中的关键技术点。 ### 一、理解DataSet与JSON #### DataSet `...
- `DataSet`是一种内存驻留结构,用于表示关系数据,其设计目的是为了在客户端缓存来自多个表的数据,并能够离线操作这些数据。 2. **分类详解**: - **非类型化数据集**:不具备类型感知能力,表和列需通过`...
### Dataset在Dorado框架中的应用详解 #### 一、引言 Dorado是一款基于Java的高效Web应用开发框架,它提供了丰富的组件和技术来简化企业级Web应用的开发过程。其中,`Dataset`作为Dorado的核心组件之一,在客户端与...
#### 三、Client Side Dataset 组件详解 **1. TIWClientSideDataset** - **特点**:简单的客户端数据集,通过Columns和Data属性定义字段名称和数据。 - **用途**:适用于显示预定义的数据或特定来源的数据。 **2....
标题提到的是"一个基于C#+Silverlight实现的Dataset Surrogate程序例子源码",这表明我们讨论的是一段使用C#编程语言和Silverlight技术编写的源代码,具体是关于Dataset Surrogate的实现。Dataset Surrogate是一种在...
3. 数据访问:使用DataSet、DataTable和DataAdapter进行数据操作,或者利用Entity Framework进行ORM(对象关系映射)。 4. 文件操作:如何上传、下载和处理文件,例如使用FileUpload控件和FileStream类。 5. 用户...
### Linq to DataSet知识点详解 #### 一、LINQ to DataSet概述 **LINQ to DataSet** 是 **Language Integrated Query (LINQ)** 在 .NET Framework 中针对 **DataSet** 的一种实现方式,它允许开发者以声明性的方式...
《基于WebGIS的噪声监测系统配套地理数据详解》 在当今信息化社会,地理信息系统(Geographic Information System,简称GIS)已经广泛应用于各个领域,尤其是在环境监测、城市规划、交通管理等方面发挥着重要作用。...
### JS DataSet 数据源处理知识点详解 #### 一、概述 在Web开发中,尤其是在使用JavaScript进行前后端交互时,处理数据集(DataSet)是一项常见且重要的任务。本篇将详细介绍如何利用JavaScript处理来自服务器端的...
- Windows Forms:学习如何使用Windows Forms开发桌面应用,包括控件的使用、事件处理和界面设计。 - WPF(Windows Presentation Foundation):了解WPF框架,学习XAML语言,构建富客户端应用程序。 8. **.NET ...
这可能涉及到CSS样式定义、JavaScript事件处理以及与Dataset的交互逻辑。 滚动条组件的实现通常涉及以下几个关键步骤: 1. 设计组件的外观和交互:根据需求设计滚动条的样式,可以使用CSS来定义组件的视觉效果,如...
- **DataSet对象**:它是ADO.NET中的核心对象之一,用于在客户端缓存数据,即使在网络断开的情况下也能进行数据操作。 - **DataAdapter对象**:作为桥梁,它负责将数据从数据库加载到DataSet中,以及将DataSet中的...