轉帖|使用教程|編輯:鮑佳佳|2020-07-14 17:20:58.033|閱讀 274 次
概述:本文介紹了在2020v1版本中,新增的基于UI的過濾器控件C1FilterEditor。FilterEditor的設計具有直觀的UI,允許最終用戶動態創建復雜的過濾條件。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
ComponentOne Studio for WinForms包含超過65個.NET的控件,其中,還有一些是 WinForms所獨有的。它擁有敏捷的設計器、數以百計的樣例和一個活躍的社區論壇。它可以幫你完成任何事,不管是要設計一個擁有百萬行的Grid還是一張具有無數點的圖表。
點擊下載ComponentOne Studio Enterprise最新試用版
在2020v1版本中,我們添加了一個新的基于UI的過濾器控件C1FilterEditor。FilterEditor的設計具有直觀的UI,允許最終用戶動態創建復雜的過濾條件。
C1FilterEditor
C1FilterEditor是一個具有樹視圖布局的控件,允許最終用戶通過將過濾器組合和操作添加為節點來創建高級過濾器條件。過濾器組合是過濾器操作的集合,過濾器操作是一個表達式,使最終用戶可以選擇字段,值和應過濾數據的邏輯操作的類型。
此控件已添加到“ C1.Win.DataFilter”程序集中,其中包括現有的C1DataFilter控件。
以上是C1FilterEditor的簡要介紹以及它的界面外觀。接下來我們進一步了解更多詳細信息。
.C1FilterEditor的主要功能:基于UI的過濾
FilterEditor通過添加過濾器操作的組合來過濾數據源,這些操作將它們組織成樹狀結構。這個界面使開發人員只需單擊幾下即可創建復雜的過濾條件。
最終用戶互動
該控件支持交互式功能,以為最終用戶提供方便的篩選界面。以下列出了最終用戶可以進行的操作:
展開/折疊過濾器:
FilterEditor在邏輯上將過濾條件分組(分為And / Or函數),從而創建樹狀結構。這種布局可以切換過濾條件顯示,并允許更多地關注特定的過濾操作。C1FilterEditor通過為每個節點提供+/-框來啟用此功能。
過濾器的添加/刪除:
最終用戶可以使用FilterEditor動態添加或刪除過濾器組合/操作,并在數據控件中同時查看相應的結果。FilterEditor通過為每個過濾器組合/操作提供+ / X按鈕來實現此目的。
拖放過濾器:FilterEditor支持更改過濾器組合的順序和/或通過簡單地拖放將過濾器操作從一種組合移動到另一種組合。C1FilterEditor借助垂直省略號按鈕啟用此功能。
該控件通過將EnableDragDrop屬性分別設置為true / false ,可以靈活地允許或禁止拖放。
程序過濾
除了基于動態UI的篩選之外,該控件還支持通過代碼創建相同的篩選條件。這樣,應用程序的開發人員可以通過應用預定義的過濾器來構建默認視圖。使用CombinationExpression和OperationExpression類可以完成代碼篩選。
無縫整合
FilterEditor控件與任何UI組件無縫集成,從而可以使用不具有任何內置過濾支持的UI組件進行方便的過濾。
到目前為止,我們已經討論了使用C1FilterEditor的好處及其提供的內容。但是在深入研究如何利用這些功能的優勢之前,讓我們首先瀏覽一些與C1FilterEditor相關的常用術語。
FilterEditor中的術語
要使用C1FilterEditor構建過濾條件,以下是與C1FilterEditor相關的以下常用術語:
過濾器操作過濾器組合
過濾器組合是一組簡單的過濾器條件/操作或由同一邏輯運算符組合的其他組。用數學術語,可以將其視為括號中的過濾器表達式中的各個部分。
例如,“ SupplierID = 4 AND Discontinued = False OR CategoryID = 2”過濾器表達式可以用圓括號包裝為“(SupplierID = 4 AND Discontinued = False)OR(CategoryID = 2)”?,F在,此表達式顯示兩個組:Group1:SupplierID = 4 AND Discontinued = False和Group2:CategoryID = 2,其中每個組中的過濾條件由同一邏輯運算符組合。現在,我們已經知道了與C1FilterEditor相關的術語,讓我們討論
過濾表達式
C1FilterEditor控件允許通過添加一系列過濾器組合和操作來創建任何復雜度的過濾器標準。以下各節說明了其逐步實現:
建立簡單的過濾條件
即使最簡單的過濾器表達式也包含三個元素:字段,運算符和值,統稱為過濾器操作。
要查看實現,請看一下我們在上面的“過濾器操作”標題中討論的過濾器標準:“ SupplierID = 4”。
運行時步驟:
1.將VS工具箱中的C1FilterEditor控件拖放到WinForms項目的表單上。8.單擊底部的ApplyFilter按鈕。
等效的C#代碼:
上面的過濾器表達式也可以使用以下代碼實現:通過UI /代碼完成上述步驟將以僅滿足“ SupplierID = 4”條件的記錄將保留在數據源/視圖中的方式過濾數據源。
建立復雜的過濾器標準
C1FilterEditor允許創建包含多個過濾器操作的高級過濾器條件。也就是說,使用C1FilterEditor可以創建過濾器表達式,該表達式由邏輯組合(通過AND / OR運算符)的多組過濾條件組成。為了展示,讓我們考慮一個復雜的過濾條件:“ SupplierID = 4 AND Discontinued = False OR CategoryID = 2 OR CategoryID = 6”。要實現這樣的過濾器表達式,我們首先需要確定組。因此,讓我們將該表達式用方括號括起來,并通過邏輯運算符將它們組合為“(SupplierID = 4 AND Discontinued = False)OR(CategoryID = 2 OR CategoryID = 6)”。
因此,這兩個組是組1:(SupplierID = 4 AND Discontinued = False)和組2:(CategoryID = 2或CategoryID = 6)。
運行時步驟:
等效的C#代碼:
上面的過濾器表達式也可以使用以下代碼實現:
大功告成 上面的代碼將使用復雜的過濾條件過濾數據:“ SupplierID = 4 AND Discontinued = False OR CategoryID = 2 OR CategoryID = 6”
本文轉載自葡萄城
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn
文章轉載自: