Flex 動態調整DataGrid列的顯示

2021-06-17 16:40:52 字數 1962 閱讀 1507

當datagrid需要呈現n多列的時候,要麼列顯示不全都擠在一起,要麼就出現橫向的滾動條。這些感覺都不和諧。

那麼實現的方案有幾種

1、給每列加個id,然後用別的控制項(例如combobox)來控制每列顯示,來開關列的顯示和隱藏,類似js那樣的做法,但那樣**量太大,寫通用的方法也太麻煩了。

2、基於上面的方法考慮,可以靈活運用flex中資料繫結功能來自動實現上述的效果。

首先選擇下需要實現效果的控制項:datagrid/tile/repeater/checkbox

datagrid:不講了誰都知道幹嘛的。

tile:布局容器,容器內預設先橫向布局,當寬度不夠時自動換行。

repeater:主要的玩意,官方解釋根據其 dataprovider 建立其子元件的多個例項。

checkbox:不知道的回家種地吧。

實現思路:

1、tile中的repeater繫結datagrid中的columns。

a.了解到datagrid中的columns是什麼?沒錯是array。

b.那也就是datagrid中的columns可以直接給dataprovider提供資料繫結。也就是說repeater.dataprovider和datagrid.columns都是指向同乙個array,我喜歡叫共同使用同一資料來源。哈哈

c.繫結後可以直接生成datagrid列數的checkbox控制項了。

d.checkbox中的可以通過repeater的currentitem,來取到datagrid的columns當前列的物件。

mxml**:?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

2、對checkbox的change事件處理。

a.判斷是否選中。

b.從事件中取到資料來源中所需要操作的物件。event.currenttarget.getrepeateritem()

c.改變顯示。

as**:?

1

2

3

4

5

6

7

privatefunctiontileitemcheckbox(event:event):voidelse

}

其實實現起來挺簡單的,就是理解思路上有點繞,主要是共同使用同一資料來源的概念,flex中這樣能很方便的實現在乙個控制項中操作另一控制項。

flex查詢xml欄位繫結DataGrid小結

flex查詢xml欄位繫結datagrid小結 1.xml定義 bindable private var xmlitems xml 浙江杭州 310012 0571 浙江溫州 325000 0577 2.datagrid繫結如下 3.繫結全部 根據id查詢 如果想按zipcode郵編字段查詢 總結注...

動態分割槽調整

關係型資料庫中,對分割槽表insert資料時候,資料庫自動會根據分割槽欄位的值,將資料插入到相應的分割槽中,hive中也提供了類似的機制,即動態分割槽 dynamic partition 只不過,使用hive的動態分割槽,需要進行相應的配置 1.開啟動態分割槽引數設定 1 開啟動態分割槽功能 預設t...

Flex 動態嵌入字型

flex編譯器,位於flex sdk的bin目錄,例如 flash builder 4 sdk 3.5 c program files adobe adobe flash builder 4 sdks 3.5.0 bin 編譯器的詳細使用說明參考官方文件using the flex compiler...