Flex 3 AdvancedDataGrid 具有 Tree 與 跨欄 (columnSpan) 的功能
以下利用這兩種特性做出可收合的 DataGrid
MyDataGridGroupItemRenderer Class:
package com.ticore.uicomponents {
import mx.controls.advancedDataGridClasses.AdvancedDataGridGroupItemRenderer;
public class MyDataGridGroupItemRenderer extends AdvancedDataGridGroupItemRenderer {
public function MyDataGridGroupItemRenderer() {
super();
}
override protected function updateDisplayList(
unscaledWidth:Number, unscaledHeight:Number):void {
super.updateDisplayList(unscaledWidth, unscaledHeight);
this.graphics.clear();
this.graphics.lineStyle(1, 0x808080, 1, true);
this.graphics.drawRect(-1, -1, unscaledWidth + 1, unscaledHeight);
}
}
}
Flex MXML Code:
<?xml version="1.0"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" backgroundColor="#E0E0E0">
<mx:Script>
<![CDATA[
import mx.controls.advancedDataGridClasses.*;
import mx.collections.ArrayCollection;
[Bindable]
private var dpHierarchy:ArrayCollection = new ArrayCollection([
{Region:"Arizona", children: [
{Territory_Rep:"Barbara Jennings", Actual:38865, Estimate:40000},
{Territory_Rep:"Dana Binn", Actual:29885, Estimate:30000}]},
{Region:"Central California", children: [
{Territory_Rep:"Joe Smith", Actual:29134, Estimate:30000}]},
{Region:"Nevada", children: [
{Territory_Rep:"Bethany Pittman", Actual:52888, Estimate:45000}]},
{Region:"Northern California", children: [
{Territory_Rep:"Lauren Ipsum", Actual:38805, Estimate:40000},
{Territory_Rep:"T.R. Smith", Actual:55498, Estimate:40000}]},
{Region:"Southern California", children: [
{Territory_Rep:"Alice Treu", Actual:44985, Estimate:45000},
{Territory_Rep:"Jane Grove", Actual:44913, Estimate:45000}]}
]);
public function groupLabelFunction(item:Object, column:AdvancedDataGridColumn):String{
if (item && item.children) {
return item[column.dataField] + " (" + item.children.length + ")";
} else {
return item[column.dataField];
}
}
]]>
</mx:Script>
<mx:AdvancedDataGrid id="myADG" width="100%" height="100%"
rowHeight="24" headerHeight="24" fontSize="12" displayItemsExpanded="true"
paddingTop="0" paddingBottom="0" paddingLeft="0" paddingRight="0"
folderClosedIcon="{null}" folderOpenIcon="{null}" defaultLeafIcon="{null}" >
<mx:dataProvider>
<mx:HierarchicalData source="{dpHierarchy}" />
</mx:dataProvider>
<mx:rendererProviders>
<mx:AdvancedDataGridRendererProvider columnIndex="0" columnSpan="4" dataField="Region"
renderer="com.ticore.uicomponents.MyDataGridGroupItemRenderer" />
<mx:AdvancedDataGridRendererProvider dataField="Territory_Rep"
renderer="mx.controls.advancedDataGridClasses.AdvancedDataGridGroupItemRenderer" />
</mx:rendererProviders>
<mx:groupedColumns>
<mx:AdvancedDataGridColumn id="col1" dataField="Region" width="20"
labelFunction="groupLabelFunction" />
<mx:AdvancedDataGridColumn id="col2" dataField="Territory_Rep"/>
<mx:AdvancedDataGridColumn dataField="Actual"/>
<mx:AdvancedDataGridColumn dataField="Estimate"/>
</mx:groupedColumns>
</mx:AdvancedDataGrid>
</mx:Application>
分享到:
相关推荐
在TourDeFlexhttp://www.adobe.com/devnet/flex/tourdeflex.html中有个折叠式手风琴控件(Collapsible Accordion),可以折叠手风琴,很酷,但不支持中文。几经尝试发现是由于Flex控件在旋转后中文就不显示了,因此做...
// collapsible: true, //隐藏按钮 //冻结列 // frozenColumns: [[{ field: "chk", "checkbox": true}]], //复选框 //列 rownumbers: false, //传输参数 queryParams: { "action": "query" }, pagination: ...
ASP.Net GridView Columns with Collapsible panel Embedded
@ mtburdon / react-collapsible React可折叠组件 安装 npm install --save @mtburdon/react-collapsible 用法 import React , { Component } from 'react' import { Collapsible , CollapsibleHead , ...
React原生可折叠视图 基于React Native 动画可折叠视图组件 概述 可折叠的常见用例的一个简单组件 ...$ npm install @eliav2/react-native-collapsible-view // or with yarn $ yarn add @eliav2/react-native-collapsi
@ dafcoe / vue-collapsible-panel 使用Vue3构建的易于使用,可定制的可折叠面板/手风琴库。 安装 使用yarn或npm将软件包安装为项目依赖项: $ yarn add @dafcoe/vue-collapsible-panel --- or --- $ npm install ...
aquirdturtle_collapsible_headings 使标题像旧的Jupyter笔记本扩展名和Mathematica笔记本一样可折叠。 通过单击标题单元格左侧创建的插入符号图标或使用快捷方式,可以折叠/取消折叠所选的标题单元格(即,以“#”...
React响应式可折叠部分组件(可折叠) React组件将内容包装...安装通过npm或yarn进行安装npm install react-collapsible --saveyarn add react-collapsible用法可折叠的子元素可以接收任何HTML元素或React组件。 可折叠
肉桂系统托盘可折叠 与 2.6 版本兼容的 Cinnamon 可折叠系统托盘小程序。... 要安装它,只需将这个 repo 签出到你的 Cinnamon 小程序目录中,即~/.local/share/cinnamon/applets/systray-collapsible@hdodenhof.de 。
react-navigation-collapsible 文献资料 ≥v5( latest ) v5( latest ) 当前的 ≥v3 v3 v2 v2 :building_construction: 由于的不再支持可折叠Tab导航器。 用法 1-1。 默认标题 // Expo ONLY import { ...
一个基于ASP.NET+AJAX实现的表单Form元素collapsible 折叠显示控件源码。
安装npm install --save react-native-collapsible可折叠用法import Collapsible from 'react-native-collapsible' ;( ) => ( < Collapsible xss=removed> < SomeCollapsedView> < / Collapsible
可折叠的 一种轻巧易用的方式来切换内容的可见性。 演示版
安装您可以通过composer安装该软件包: composer require digital-creative/collapsible-resource-manager接下来,您必须在Nova中注册该工具。 这通常是在NovaServiceProvider.的tools方法中NovaServiceProvider. ...
首先,本文档从 collapsible subgrade 的定义入手,介绍了土木工程中常见的 collapsible subgrade 问题,包括 collapsible subgrade 的类型、特征和成因等。接着,本文档详细介绍了 collapsible subgrade 的检测方法...
plastik-collapsible是可折叠和可扩展项目的列表。 它扩展了iron-selector ,因此支持相同的功能,但可以更改selectable属性。 演示和文档可在。 始终欢迎请求请求。 如果您遇到任何错误,请随时。 安装 bower ...
Collapsible-Toolbar-Helper A combination of custom CollapsibleToolbar and Collapsing Text to give you the same effect as App Bar Layout from the Desgin support library sans the use of a Toolbar ...
Bootstrap 类似于 Collapsible mixin,它使用预定义的切换行为。 用法 在此阶段建议通过npm和browserify使用。 安装 npm install --save react-collapsible-mixin 用 每个可折叠内容元素必须具有唯一的具有...
bower install angular-material-collapsible 使您的Angular模块依赖于ngMaterialCollapsible模块。 angular . module ( 'materialCollapsibleExample' , [ 'ngMaterialCollapsible' ] ) ; 例子 点击查看示例 没有...
force-collapsible-real.html