`
fu80008
  • 浏览: 19179 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

关于Flex的DataGrid的应用拓展(二)

    博客分类:
  • flex
 
阅读更多
    
      在使用DataGrid的过程中,用户可能会要求根据某个条件,整行disable。如根据active字段是否等于true来判断这行是否disable。这个特性在DataGrid是不存在的,因此需要拓展。

步骤如下:

1)实现DataGrid继承来拓展一些属性。
package {
    import mx.controls.DataGrid;
    import mx.controls.listClasses.IListItemRenderer;
    import mx.core.ClassFactory;
    
    public class CheckSelectedDataGrid extends DataGrid
    {
        public function CheckSelectedDataGrid()
        {
            super();
            this.itemRenderer= new ClassFactory(CheckDisableLabel);  //added custom field
        }
        
        //check current row if it should be selected.
        override	protected function selectItem(item:IListItemRenderer,
                                                  shiftKey:Boolean, ctrlKey:Boolean,
                                                  transition:Boolean = true):Boolean{
            var seletedData:Object=item.data;
            
            if(seletedData.active=="false"){
                return false;
            }else{
                return  super.selectItem(item,shiftKey,ctrlKey,transition);
            }
        }
    }
}

注意:以上实现了两件事情。1)创建了一个单元格的实现工厂,这个实现类下一步介绍。2)既然disable就应该尽量避免用户选中这一行,这就是以上覆盖方法需要做的事情。

2)实现上面指定的工厂类:
package 
{
    import mx.controls.Label;

    public class CheckDisableLabel extends Label
    {
        public function CheckDisableLabel()
        {
        }
        
        //check current field if it should be disabled
        override   public function set data(value:Object):void{
            super.data=value;
            if(value&&value.hasOwnProperty("active")&&value.active!="true"){
                this.enabled=false;
            }else{
                this.enabled=true;
            }
        }
    }
}


注:这样就完成了一个简单的正行disable的功能。使用的时候跟其他DataGrid没有什么不同。这里就举例子如何使用了。这里仅仅是个demo,应用于项目还需要

自己修改一下。





分享到:
评论

相关推荐

    FLEX datagrid应用实例

    在本文中,我们将深入探讨基于Adobe Flex的DataGrid组件的应用实例。Flex是一种强大的富互联网应用程序(RIA)开发框架,主要用于构建交互式、响应式的Web应用。DataGrid是Flex中的一个核心组件,它允许开发者以表格...

    flex datagrid 前台 分页

    Flex DataGrid是一款强大的数据展示组件,常用于Adobe Flex或Flash Builder等开发环境中。它能够高效地展示大量数据,并提供丰富的用户交互功能。在本场景中,我们关注的是“前台分页”这一技术。 前台分页是指在...

    Flex Datagrid checkbox实现

    在Flex应用中,Datagrid经常被用于处理和展示大量的结构化数据。在标题“Flex Datagrid checkbox实现”中,讨论的核心是Datagrid中集成复选框(checkbox)的功能。 在Flex Datagrid中实现复选框功能,主要是通过...

    flex DataGrid 表头分组

    在提供的文档《Flex_AdvancedDataGrid的使用.doc》中,可能包含了更多关于如何使用和配置`AdvancedDataGrid`以实现表头分组的详细信息,包括示例代码和最佳实践。建议详细阅读文档以深入理解和应用这个功能。 总的...

    Flex dataGrid 全选、反选

    在Flex编程中,DataGrid组件是用于展示结构化数据的强大工具。它允许用户对数据进行排序、筛选和编辑。在实际应用中,我们经常需要实现全选和反选功能,以便用户可以一次性选择或取消选择所有条目。本文将详细讨论...

    flex datagrid 嵌套checkbox实现全选

    在Flex开发中,数据网格(DataGrid)是用于展示数据集合的强大组件,它允许用户以表格形式查看和操作数据。本示例关注的是在DataGrid中嵌套复选框(Checkbox),并实现全选功能。这在需要用户批量选择或操作数据的...

    flex datagrid

    Flex DataGrid是一个强大的数据展示组件,它在Adobe Flex框架中被广泛使用,用于显示和操作大量结构化的数据。这个组件提供了灵活的布局选项,可定制的列格式化,以及丰富的用户交互功能,如排序、筛选和编辑。...

    将Flex DataGrid数据导出到Excel中

    在开发基于Adobe Flex的应用程序时,我们经常遇到需要将数据展示在用户友好的方式中,例如使用DataGrid组件。然而,有时用户希望将这些数据显示在更传统的格式中,如Microsoft Excel电子表格。本教程将详细介绍如何...

    flex datagrid 实现合计功能控件包

    flex datagrid 实现合计功能控件包 带源码,demo fxp是flex4的工程文件,导入到工作空间即可 直接导入项目即可。 更多访问我的blog www.dplayer.net

    flex datagrid 表格 合计

    Flex DataGrid 是 Adobe Flex 框架中的一个组件,它用于在应用程序中显示表格数据。在Flex中,实现数据网格的总计功能是一项常见的需求,它能够帮助用户快速地理解和分析大量数据。本项目提供了一个已经实现了总计...

    flex DataGrid xml 动态数据列表实例

    `DataGrid`组件是Flex提供的一种强大的工具,用于显示表格形式的数据。在这个实例中,我们将探讨如何利用Flex的`DataGrid`组件结合XML文件来实现动态数据列表。 首先,让我们深入了解`DataGrid`组件。`DataGrid`是...

    FLEX的datagrid合计、平均值

    本文将深入探讨如何在Flex的Datagrid中实现数据的合计与平均值计算,帮助开发者更好地理解和应用这些功能。 首先,我们要了解Flex的Datagrid组件的基本结构。Datagrid通常与数据提供者绑定,如ArrayCollection或...

    Flex DataGrid CheckBox 一个简单的全选

    在Flex开发中,DataGrid组件是一个非常常用的控件,它用于展示数据集合,并提供交互式操作,如排序、选择等。本示例聚焦于DataGrid中的CheckBox集成,...同时,了解和掌握这些技巧对于提高Flex应用的用户体验至关重要。

    flex DataGrid改变指定行的背景颜色

    在Flex开发中,DataGrid控件是用于展示数据表格的常用组件,它可以高效地呈现大量结构化信息。在某些情况下,我们可能需要根据特定条件改变DataGrid中的某一行或几行的背景颜色,以突出显示或者区分不同的数据状态。...

    Flex DataGrid 分页

    通过阅读博客文章,我们可以深入了解Flex DataGrid分页的实现细节,学习如何利用PagerBar.mxml或其他工具来优化我们的Flex应用。同时,也可以从中获取灵感,为自己的项目设计更高效、更易用的分页解决方案。

    flex datagrid 分页控件源码

    Flex DataGrid是一款基于Adobe Flex技术的数据展示控件,它允许开发者在Web应用中展示大量数据并进行高效管理。在描述中提到的“flex datagrid pagination”是指DataGrid控件的一个重要特性——分页功能。在处理大...

    Flex DataGrid 改变某一行的背景颜色

    在Flex中,可以为DataGrid定义一个CSS类,然后在需要改变背景色的行上应用这个类。例如: ```css .myCustomRow { background-color: #FF0000; } ``` 然后在数据源中为特定行添加这个类名,或者在代码中动态设置:...

    flex datagrid doubleclick 实例

    压缩包中的`FlexClient1.1`可能是一个包含Flex客户端应用程序的项目,而`FlexServer1.1`可能是服务器端的组件或者服务,如处理DataGrid双击事件后发送的请求。在实际应用中,客户端与服务器端的交互通常通过AMF...

Global site tag (gtag.js) - Google Analytics