2012-07-25 26 views
0

我有這種分類視圖顯示在類別列本身不顯示的視圖面板。相反,我在viewPanel上方顯示了一個組合框,用戶可以從所有可用的類別中進行選擇(請參見下面的屏幕截圖)。該組合綁定到scopeVariable並刷新viewPanel onChange。 viewPanel從相同的scopeVar中讀取計算出的categoryFilter。這一切都很好。如何防止一個viewPanel類別篩選器顯示空行,如果沒有設置篩選器

現在我也已經實現了其中(如果選擇)編程設置過濾器貓爲NULL選擇列表中的附加通配符(*)值。這樣我強制viewPanel顯示所有條目。再次,這工作正常,但缺點是現在視圖顯示空行,其中類別條目將正常顯示(在屏幕截圖中,每個條目上方顯示空行,「edcom GmbH」類別顯然屬於2個條目到同一類別;那些不是由一個空行分隔):

enter image description here

一到至少隱藏這些空行。將通過CSS編碼的裝置的方法。但我更喜歡那些行根本不被渲染。

這可以在所有使用viewPanel完成,以及如何?或者我必須使用其他控件,如重複或dataTable?

由於提前,

洛薩

回答

3

一「黑客」(難看我承認),將您的分類列改變從FirmaFirma:"--All--"Firma:"*",然後,而不是設置類別過濾器, NULLyou set it to "--All--"(或「*」)。

雙重類別命中索引器,但應該做你需要的。

+0

+1正是我通常做的。但是,多分類列和getAllEntriesByKey方法存在性能問題,tho – 2012-07-26 06:40:47

+0

感謝Stephan,我想到了這個解決方案,但不知怎的,我不太喜歡它。除非有其他方法,否則我會保留原樣,只需添加一些自定義CSS;看到我自己的回答 – 2012-07-26 10:21:25

+0

在你的網頁上 - 這就是爲什麼我稱它爲黑客 – stwissel 2012-07-28 02:15:08

0

顯然沒有簡單的方法。所以,那時我會堅持這個CSS樣式的解決方案:

在視圖面板UND所有屬性 - 數據我設置VAR =「項」。然後,在所有物業 - 造型我設定程序上的價值,爲rowClasses屬性:

if(entry.isCategory()){ 
    return "rowStyleHidden"; 
} 
return ""; 

樣式類「rowStyleHidden」隱藏的行使用

display: none; 

還不知道如何證明在性能方面,我必須在實際數據庫的副本中實現它時觀察這一點。

0

您也可以通過根據組合框中的值計算視圖名稱來切換到未分類視圖。