Wijmo5 FlexGrid教程(3)- 实现增加删除功能

发布时间:2015/10/14 00:10 发布者:Alice

返回博客中心

对于表格控件,很基本的操作就是增加删除,在WinForm平台下我们能够很轻易地实现。那么基于HTML5,我们又要怎么去实现这个功能呢?本文就介绍flexgrid的基本操作:增加删除。

在学习增加和删除之前,我们需要了解wijmo5的另一个重要的概念:CollectionView。它由ICollectionView接口继承而来,用标准的JavaScript数组提供数据。

由于CollectionView类继承自以下三个接口:

  • ICollectionView
  • IEditableCollectionView
  • IPagedCollectionView

因此就能够容易的获取当前的数据,排序,过滤,分组,添加删除,以及分页。

 

有了这个基础,我们就来介绍利用它继承的IEditableCollectionView接口,来实现增加和删除。

增加

1.addNew

通过CollectionView的addNew方法,可以添加一个新的item到集合。

这个方法没有参数,在添加新的数据后,还需要使用commitNewcancelNew的方法进行数据的提交或是取消。

典型的使用方法:

// create the new item, add it to the collection
var newItem = view.addNew();
// initialize the new item
newItem.id = getFreshId();
newItem.country= 'Chinese';
// commit the new item so the view can be refreshed
view.commitNew();

2.CollectionView.Items.push

通过CollectionView.Items拿到当前的数据,并且通过push添加一个新的数据。

代码参考:

var cv = grid.itemsSource;
            var data = cv.items;

            data.push({
                id: cv.items.length,
                country: countries[i % countries.length]
            });
            cv.refresh();

 

删除

CollectionView提供了removeremoveAt方法,可以根据项目删除指定的项目,也可以根据项目的索引删除项目。

使用CollectionView.currentItem就可以得到当前选择的项目,因此删除选择项目的代码参考:

var cv = grid.itemsSource;

            cv.remove.remove(cv.currentItem);
            cv.refresh();

 

根据本文的介绍,就能很容易的对flexgrid进行增加和删除。

文本的源代码下载:

flexgrid_addremove.zip (73.05 kb)

 

如果你对Wijmo5感兴趣,可以到如下链接下载:

/download/?pid=54

 

更多资源:

Wijmo中文官网:/developer/wijmojs

Wijmo5在线示例:/developer/wijmojscore

Wijmo5产品文档:/developer/wijmojscore

如果依然有问题,可以到我们的官方产品论坛发帖咨询:http://gcdn.grapecity.com.cn/showforum-140.html

 

请参考Wijmo5技术文章汇总

 《wijmo5 flexgrid基础教程》系列文章


关于葡萄城

赋能开发者!葡萄城是专业的集开发工具、商业智能解决方案、低代码开发平台于一身的软件和服务提供商,为超过 75% 的全球财富 500 强企业提供服务。葡萄城专注控件软件领域30年,希望通过模块化的开发控件、灵活的低代码应用开发平台等一系列开发工具、解决方案和服务,帮助开发者快速响应复杂多变的业务需求,最大程度地发挥开发者的才智和潜能,让开发者的 IT 人生更从容更美好。

了解详情,请访问葡萄城官网