DataGrid中数据的增加/删除/获取
来源:互联网 发布:淘宝中权重是什么意思 编辑:程序博客网 时间:2024/05/01 08:30
添加/删除
由于DataGrid的数据都绑定于Array或XML,所以我们需要增加记当或删除记录的时候..只需要对所绑定的数据进行相应的操作即可。这里就不多说了..一会直接看代码。
要提示一下的是..虽然数据与DataGrid进行的绑定.不过好像修改了数据源不会立刻更新..需要DataGrid对数据源进行一次反向操作(就在是DataGrid下进行编辑,下一节会介绍),才会进行更新,所以如果希望立刻更新的话..我们可以再指行一次数据指定..
DataGrid.dataProvider = 数据源
获取
这里所说的获取..是当我们对DataGrid进行的操作(点击项目)的时候..进行所点击的位置索引与数据的获取.
(如果要获取指定第几行,每几列的数据,这样对数据源进行操作即可)
当我们侦听itemClick事件的时候..将会接收到一个ListEvent事件对象..对象里分别有所点击单元格的列索引与列索引,我们就从这两个数据进行其它数据的获取..
(ps:下边提到的e为ListEvent事件对象..)
1.所点击的列的表头
(e.target as DataGrid).columns[e.columnIndex].headerText
2.点击的列索引
e.columnIndex
3.点击的行索引
e.rowIndex
4.点击的整行的数据(选中的数据)
(e.target as DataGrid).selectedItem
5.选中的单元格的数据
(e.target as DataGrid).selectedItem[(e.target as DataGrid).columns[e.columnIndex].dataField]
完整代码:
由于DataGrid的数据都绑定于Array或XML,所以我们需要增加记当或删除记录的时候..只需要对所绑定的数据进行相应的操作即可。这里就不多说了..一会直接看代码。
要提示一下的是..虽然数据与DataGrid进行的绑定.不过好像修改了数据源不会立刻更新..需要DataGrid对数据源进行一次反向操作(就在是DataGrid下进行编辑,下一节会介绍),才会进行更新,所以如果希望立刻更新的话..我们可以再指行一次数据指定..
DataGrid.dataProvider = 数据源
获取
这里所说的获取..是当我们对DataGrid进行的操作(点击项目)的时候..进行所点击的位置索引与数据的获取.
(如果要获取指定第几行,每几列的数据,这样对数据源进行操作即可)
当我们侦听itemClick事件的时候..将会接收到一个ListEvent事件对象..对象里分别有所点击单元格的列索引与列索引,我们就从这两个数据进行其它数据的获取..
(ps:下边提到的e为ListEvent事件对象..)
1.所点击的列的表头
(e.target as DataGrid).columns[e.columnIndex].headerText
2.点击的列索引
e.columnIndex
3.点击的行索引
e.rowIndex
4.点击的整行的数据(选中的数据)
(e.target as DataGrid).selectedItem
5.选中的单元格的数据
(e.target as DataGrid).selectedItem[(e.target as DataGrid).columns[e.columnIndex].dataField]
完整代码:
<?xml version="1.0"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" width="450" fontFamily="宋体" fontSize="12" height="400">
<mx:Script>
<![CDATA[
import mx.controls.*;
import mx.events.ListEvent;
import mx.controls.dataGridClasses.*;
private var DataGrid1:DataGrid;
[Bindable]//原始数据
public var dataArr:Array = [{id:1,name:"苹果",count:100},
{id:2,name:"西瓜",count:200},
{id:3,name:"水蜜桃",count:50}]
private function addItem():void{
dataArr.push({id:uiId.value,name:uiName.text,count:uiCount.value})
DataGrid2.dataProvider = dataArr
}
private function delItem():void{
dataArr.pop();
DataGrid2.dataProvider = dataArr
}
private function itemClick(e:ListEvent):void {
var txt:String = "表头为: "+(e.target as DataGrid).columns[e.columnIndex].headerText+"/n"
txt+="选中第 "+e.columnIndex+" 列/n"
txt+="选中第 "+e.rowIndex+" 行/n"
txt+="选中的行的数据为:/n"
var dat:Object = (e.target as DataGrid).selectedItem
for(var i:* in dat){
txt+=" "+i+":"+dat[i]+"/n"
}
txt+="选中的单元可格的数据为 "+(e.target as DataGrid).selectedItem[(e.target as DataGrid).columns[e.columnIndex].dataField]+" /n"
Alert.show(txt)
}
]]>
</mx:Script>
<mx:DataGrid id="DataGrid2" itemClick="itemClick(event)" dataProvider="{dataArr}" width="430" y="10" x="10" height="208">
<mx:columns>
<mx:DataGridColumn headerText="序号" dataField="id"/>
<mx:DataGridColumn headerText="名称" dataField="name"/>
<mx:DataGridColumn headerText="数量" dataField="count" editorDataField="value"/>
</mx:columns>
</mx:DataGrid>
<mx:NumericStepper id="uiId" x="10" y="241" width="150"/>
<mx:TextInput id="uiName" x="10" y="288" width="150"/>
<mx:NumericStepper id="uiCount" x="10" y="335" width="150"/>
<mx:Label x="10" y="224" text="序号:"/>
<mx:Label x="10" y="271" text="名称:"/>
<mx:Label x="10" y="318" text="数量:"/>
<mx:Button click="addItem()" x="10" y="368" label="添加" width="150"/>
<mx:Button click="delItem()" x="290" y="368" label="删除最后一个" width="150"/>
</mx:Application>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" width="450" fontFamily="宋体" fontSize="12" height="400">
<mx:Script>
<![CDATA[
import mx.controls.*;
import mx.events.ListEvent;
import mx.controls.dataGridClasses.*;
private var DataGrid1:DataGrid;
[Bindable]//原始数据
public var dataArr:Array = [{id:1,name:"苹果",count:100},
{id:2,name:"西瓜",count:200},
{id:3,name:"水蜜桃",count:50}]
private function addItem():void{
dataArr.push({id:uiId.value,name:uiName.text,count:uiCount.value})
DataGrid2.dataProvider = dataArr
}
private function delItem():void{
dataArr.pop();
DataGrid2.dataProvider = dataArr
}
private function itemClick(e:ListEvent):void {
var txt:String = "表头为: "+(e.target as DataGrid).columns[e.columnIndex].headerText+"/n"
txt+="选中第 "+e.columnIndex+" 列/n"
txt+="选中第 "+e.rowIndex+" 行/n"
txt+="选中的行的数据为:/n"
var dat:Object = (e.target as DataGrid).selectedItem
for(var i:* in dat){
txt+=" "+i+":"+dat[i]+"/n"
}
txt+="选中的单元可格的数据为 "+(e.target as DataGrid).selectedItem[(e.target as DataGrid).columns[e.columnIndex].dataField]+" /n"
Alert.show(txt)
}
]]>
</mx:Script>
<mx:DataGrid id="DataGrid2" itemClick="itemClick(event)" dataProvider="{dataArr}" width="430" y="10" x="10" height="208">
<mx:columns>
<mx:DataGridColumn headerText="序号" dataField="id"/>
<mx:DataGridColumn headerText="名称" dataField="name"/>
<mx:DataGridColumn headerText="数量" dataField="count" editorDataField="value"/>
</mx:columns>
</mx:DataGrid>
<mx:NumericStepper id="uiId" x="10" y="241" width="150"/>
<mx:TextInput id="uiName" x="10" y="288" width="150"/>
<mx:NumericStepper id="uiCount" x="10" y="335" width="150"/>
<mx:Label x="10" y="224" text="序号:"/>
<mx:Label x="10" y="271" text="名称:"/>
<mx:Label x="10" y="318" text="数量:"/>
<mx:Button click="addItem()" x="10" y="368" label="添加" width="150"/>
<mx:Button click="delItem()" x="290" y="368" label="删除最后一个" width="150"/>
</mx:Application>
- DataGrid中数据的增加/删除/获取
- 获取DataGrid中数据
- Flex中DataGrid绑定ComboBox ,自动显示行号,增加行,删除行,保存数据
- jquery easyui datagrid的增加,修改,删除
- 增加删除DataGrid行
- jquery-easyui datagrid 中每行增加删除按钮成功删除
- 在siverlight 的datagrid控件中实现每一行数据后增加一列(操作),此列含编辑、删除、详细等操作
- c#中DataGrid的数据新增编辑删除操作代码
- 在VB.net中为DATAGRID控件增加一个删除按钮的一种方法
- 在C#中为DATAGRID控件增加一个删除按钮的一种方法
- 实现datagrid的foot中增加一个新增数据行,以解决datagrid不能新增数据的问题
- 实现datagrid的foot中增加一个新增数据行,以解决datagrid不能新增数据的问题
- 实现datagrid的foot中增加一个新增数据行,以解决datagrid不能新增数据的问题
- 在datagrid控件中获取数据项中各列的数据内容
- flex 如何获取datagrid中cell的数据
- EasyUI中datagrid获取json数据遇到的问题
- 在js中获取easyui datagrid的数据
- flex 获取datagrid的数据
- 运放的几个参数
- OpenCV 下面的图像亮度变换 Intensity transformation
- 基于法线的边缘检测
- 关于AD的一些术语
- 初识JSON(二)
- DataGrid中数据的增加/删除/获取
- Spring输入验证与数据绑定
- Ajax世界的变焦
- 计算余数
- 各大型网站架构分析收集
- MBR的读取
- 自定义单元格绘制组件DataGridViewCellPainter
- eclipse技巧学习
- SQL Server Security