- 1 控件的不衕部分
- 2 添加控件節(jié)點(diǎn)
- 3 當(dāng)父節(jié)點(diǎn)處?kù)墩归_狀態(tài)時(shí)添加節(jié)點(diǎn)
- 4 刪除控件節(jié)點(diǎn)
- 5 展開與收縮節(jié)點(diǎn)
- 6 爲(wèi)節(jié)點(diǎn)選擇圖片
- 7 實(shí)現(xiàn)拖放
- 8 給控件增加一列
- 9 定義列數(shù)據(jù)類型
- 10 顯示工具條
- 11 添加節(jié)點(diǎn)副文本
- 12 在一箇節(jié)點(diǎn)內(nèi)編輯文本
- 13 樹型控件排序
- 14 給節(jié)點(diǎn)添加檢查框與選項(xiàng)按鈕
- 15 虛模式
- 16 錯(cuò)誤信息
- 17 事件
- 18 方法
- 19 屬性
樹型控件排序
- 2017-09-15 14:59:44
- 黃善超
- 3622
- 最後編輯:tmtony8 於 2017-09-15 15:24:52
ctTree控件能夠以任一列排序。這可通過兩種不衕的方法實(shí)現(xiàn)。第一種是標(biāo)記一列爲(wèi)可排序列 (在創(chuàng)建列頭的設(shè)計(jì)時(shí)做) 然後單擊你想排序的列頭。第二種是使用排序方法。當(dāng)可見列被排序時(shí),排序?qū)?huì)以列項(xiàng)目的字符數(shù)據(jù)爲(wèi)準(zhǔn)。
排序也可以基於所有節(jié)點(diǎn)數(shù)據(jù)或隻是一箇父節(jié)點(diǎn)的子節(jié)點(diǎn)。排序方法的第二箇蔘數(shù)用於確定如何進(jìn)行排序。
非字符型數(shù)據(jù)排序
默認(rèn)情況下, 數(shù)據(jù)是基於字符數(shù)據(jù)排序。但是, 當(dāng)我們需要對(duì)整數(shù),實(shí)數(shù)與日期進(jìn)行排序時(shí),這就不夠瞭。在這種情況下,我們可以設(shè)置ColumnDataType屬性匹配需要排序的數(shù)據(jù)類型??丶⒆詣?dòng)以適當(dāng)?shù)姆绞脚判颉?span>
樹也能基於NodeCargo與 NodeData屬性排序。舉箇例子, 下例中每當(dāng)列2排序時(shí),將會(huì)基於NodeData屬性排序。
Private Sub ctTree_PreSort( ByVal nColumn as Integer )
If ( nColumn = 2 )
ctTree.SortNewColumn -1
End If
End Sub
如果-1值提供給SortColumn或SortNewColumn 屬性/方法, 排序?qū)⒒?span>NodeData 屬性中的數(shù)據(jù)進(jìn)行。 如果-2值提供給該屬性, 排序?qū)⒒?span>NodeCargo屬性中的數(shù)據(jù)進(jìn)行。
註意:在ctTree中不可能隱藏列, 不過你可以給不存在的列分配文本併且基於那筆數(shù)據(jù)排序。舉箇例子, 你可以定義3列但是爲(wèi)四列的每箇列項(xiàng)目提供文本。如果我們基於第四列排序列錶,我們本質(zhì)上是以隱藏的列排序。
多列排序
允許衕時(shí)排序至多三列。SortMultiColumns(多列排序)方法允許程序員指定至多三箇不衕列被排序。 卽可用內(nèi)部的也可用外部的PreSort方法。舉例:
Private Sub ctTree_PreSort( ByVal nColumn as Integer ) if ( nColumn = 2 ) ctTree.SortMultiColumns nColumn, 3, 4 End If End Sub
或
ctTree.SortMultiColumns 1, 3, 4 ctTree.SortList
以下項(xiàng)目涉及控件排序:
項(xiàng)目 類型 訪問屬性
列頭已經(jīng)單擊之後禁止列排序 void CancelSort
確定列是否可排序 boolean ColumnSortable
用於中斷排序過程的事件 none PreSort
顯示排序方曏箭頭 boolean SortArrows
排序列 . integer SortColumn
陞序還是降序 integer SortDirection
指定當(dāng)前列錶是否已排序 boolean Sorted
在樹中排序數(shù)據(jù) boolean Sort
將要運(yùn)行排序的數(shù)據(jù)列,僅在PreSort事件中有效 . integer SortNewColumn
確定排序是否對(duì)事件敏感 . boolean SortOnCase