`
darrenzhu
  • 浏览: 807031 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

自定义DataGrid的行背景颜色

阅读更多
1)继承AdvancedDataGrid/DataGrid
package component
{
  
  import flash.display.Sprite;
  
  import mx.collections.ArrayCollection;
  import mx.controls.DataGrid;

  public class RowColorDataGrid extends AdvancedDatagrid
  {
    public var rowColorFunction:Function;
    
    override protected function drawRowBackground(s:Sprite, rowIndex:int, y:Number, height:Number, color:uint, dataIndex:int):void
    {
      if(rowColorFunction != null) 
      {
        var item:Object;
        if(dataIndex < dataProvider.length)
        {
          item = dataProvider[dataIndex];
        }
        
        if(item)
        {
          color = rowColorFunction(item, rowIndex, dataIndex, color);
        }
      }
      super.drawRowBackground(s, rowIndex, y, height, color, dataIndex);
    }
  }
}


2)使用RowColorDataGrid
<component:RowColorDataGrid rowColorFunction="calcRowColor"/>


3)自定义calRowColor方法
private function calcRowColor(item:Object, rowIndex:int, 
								  dataIndex:int, color:uint):uint
{
	var operationStatus:String=item.operationStatus;
	var backgroundColor:uint=0xFFFFFF;
	if(operationStatus ==OperationStatus.Added){
		backgroundColor=0xa9dc84;
	}else if(operationStatus == OperationStatus.Modified){
		backgroundColor=0xa28cd4;
	}else if(operationStatus==OperationStatus.Deleted){
		backgroundColor=0xd49251;
	}else if(operationStatus ==OperationStatus.Historical){
		if(rowIndex%2==0){
			backgroundColor=0xFFFFFF;
		}else{
			backgroundColor=0xE2E2E2;
		}
	}else{
		Alert.show("operation status is not supported","Message");
	}
	return backgroundColor;
}
分享到:
评论

相关推荐

    设置datagrid行背景色示例

    在Flex或类似的开发环境中,`Datagrid` 提供了高度自定义的特性,包括列宽、排序、分页等功能,以及对行样式的定制,如字体、颜色、边框等。 在“设置datagrid行背景色示例”中,我们看到开发者已经创建了一个继承...

    datagrid行的背景色

    在实际应用中,我们经常需要根据特定条件或者需求自定义Datagrid的行背景色,以增强视觉效果,或者突出显示特定行的信息。本文将深入探讨如何在Flex中实现对datagrid行背景色的自定义。 首先,了解Flex Datagrid的...

    wpf中datagrid动态设置单元格背景

    当我们需要根据数据的某些条件动态改变`DataGrid`中单元格的背景颜色时,就需要对控件进行一些定制化操作。以下将详细讲解如何实现这个功能。 首先,我们需要理解`DataGrid`的基本结构。`DataGrid`的每一行由多个`...

    DataGrid的单元格背景和文字颜色

    本篇文章将深入探讨如何自定义DataGrid的单元格背景和文字颜色,以实现更丰富的视觉效果和数据区分。 首先,DataGrid的基本结构由行(Rows)和列(Columns)组成,每个单元格(Cell)位于这些行和列的交叉点。为了...

    wpf DataGrid 自定义样式!

    本篇文章将详细介绍如何利用 WPF 的 `ControlTemplate` 对 `DataGrid` 进行自定义样式,以及如何为特定行或列定制样式。 首先,`ControlTemplate` 是 WPF 中的一个重要概念,它允许我们完全重新定义控件的外观。...

    自定义的 DataGrid样式

    这里设置了背景色和边框颜色,可以根据需求添加更多属性,如字体、行高、列宽等。 3. **数据模板** 数据模板定义了DataGrid中的每一行如何显示数据。使用`DataTemplate`来定义列的显示样式: ```xml &lt;DataGrid....

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

    在某些情况下,我们可能需要根据特定条件改变DataGrid中的某一行或几行的背景颜色,以突出显示或者区分不同的数据状态。本篇文章将详细探讨如何在Flex中实现这一功能。 首先,我们需要理解DataGrid的基本结构。...

    wpf datagrid 单元格颜色 根据条件改变颜色 例子

    在某些场景下,我们可能希望根据数据的不同状态或条件来改变DataGrid单元格的颜色,以增强视觉效果或者突出重要信息。本篇文章将详细讲解如何在WPF中实现DataGrid单元格颜色根据条件改变。 首先,我们需要了解WPF ...

    WPF中DataGrid自定义实现最后一行下面跟一个汇总行,类似MT4

    本话题主要探讨如何在DataGrid中自定义实现最后一行后面添加一个汇总行,这在金融软件如MT4(MetaTrader 4)中非常常见,用于显示数据的总计或平均值等统计信息。 首先,我们需要了解DataGrid的基本用法。DataGrid...

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

    总结,改变Flex DataGrid中某一行的背景颜色通常涉及自定义ItemRenderer、使用CSS样式或者监听事件。选择哪种方法取决于具体需求,如是否需要复杂逻辑、性能要求以及代码可维护性等因素。通过这些技术,我们可以使...

    自定义datagrid

    1. **RowPrePaint 事件**:该事件可用于自定义行的背景色,实现间隔行的效果。但需要注意的是,仅通过 RowPrePaint 无法改变表头的颜色或样式。 2. **CellPainting 事件**:用于绘制单元格内的内容,包括背景色。...

    dataGrid根据条件行显示不同的颜色

    3. **行模板和样式**:在DataGrid中,每一行都可以有自己的模板,这允许我们自定义行的显示方式。我们可以创建一个模板,其中包含条件逻辑,当满足条件时,应用特定的样式(如背景色)。 4. **数据绑定**:在...

    NET CF下DataGrid数据行颜色交替

    1. **自定义列渲染**:你可以重写DataGrid的`OnDrawColumnCell`事件,根据当前行的索引判断是否应该改变背景色。例如,对于偶数行设置一种颜色,奇数行设置另一种颜色。 ```csharp private void dataGrid1_...

    Flex 自定义DataGrid实现根据条目某一属性值改变背景颜色

    使用自定义DataGrid时,在MXML文件中配置`rowColorFunction`方法,通过比较数据项中的`act`和`stand`字段值的大小来决定背景颜色。如果`act`值小于`stand`值,则背景色设置为特定的十六进制颜色值。 通过上述步骤,...

    FLASH中DataGrid改为交替背景色,一行白色,一行灰色

    在本篇文章中,我们将探讨如何在Flash中对DataGrid组件进行自定义,使其显示交替的行背景颜色(即一行白色,一行灰色)。这种方法类似于Flex框架中的DataGrid样式,并且能够提高用户界面的可读性和美观度。下面将...

    wpf datagrid 单元格颜色 根据datatable动态显示datagrid内容

    本主题将深入探讨如何根据DataTable中的数据动态显示DataGrid的内容,并且根据特定条件改变单元格的颜色。 首先,我们需要了解DataGrid的基本用法。DataGrid控件允许我们将数据绑定到各种数据源,如...

    componentone datagrid 颜色设置

    在WPF应用中,ComponentOne Datagrid的颜色设置涉及到多个层面,包括但不限于行背景色、字体颜色、选中行颜色、交替行颜色等。以下是一些常见的颜色设置方法: 1. **行背景色**:你可以通过设置`CellStyle`属性来自...

    flex 中datagrid 动态攺变行颜色

    为了实现行颜色的动态变化,我们需要为Datagrid创建一个自定义的ItemRenderer。在ItemRenderer类中,我们将监听数据源的`data`属性,当数据改变时更新背景色。 ```actionscript public class CustomGridRow extends...

    DATAGRID改变颜色

    当需要根据特定条件对数据显示不同的样式时,如改变行的前景色和背景色,我们可以利用事件处理和自定义逻辑来实现这一功能。下面将详细介绍如何在`DataGrid`中实现这一需求。 首先,我们需要了解`DataGrid`的基本...

Global site tag (gtag.js) - Google Analytics