2016-09-01 23 views
7

Önceki projemde, google gibi bir arama sonucunu görüntüleyen özel bir bileşeni görüntülemek için BeanItemContainer ve GeneratedColumns ile bir Tablo kullandım. Başlık, tarih, içerik dikey olarak. O kadar korkunçtu (tablo) işe yaradı.Vaadin için Liste/Tekrarlayıcı bileşeni

Şimdi aynı amaç ile yeni bir proje için Grid bileşenini kullanmak istiyorum. Sütun oluşturulacak ve özel bir bileşen içerecektir.

Bu Grid ile çalışır mı? Mevcut bir liste veya tekrarlayıcı bileşeni gibi daha iyi bir şey var mı? Özel bileşenli tek bir sütun örneği

Vaadin basit veriler veya Düğme oluşturucular dışında herhangi bir şey üzerinde frowns gibi görünüyor.

Güncelleme Bu bileşenler ayrıca Grid 7.5+

ile kutunun dışında çalışmıyor ekleme gibi görünüyor

, Izgara hücreleri, sadece fixed hight

ComponentRederer Add-on destek hücresi bileşenleri olmak olmak ister Ancak sabitleme yüksekliği hala bir sorundur.

Örnek kod:

public class Result { 
     String title; 
     Date date; 
     URL url; 
     String description; 
     List<String> tags; 

     public Result(){} 

} 

BeanItemContainer<Result> resultContainer = fetchResults(searchTerm); 

Ayrıca çok Lazy kabı kullanın, basitlik gayesi ile kullanılmaktadır beanitem.

Title(link with Url) 
Date 
Description 
tag1 tag2 tag3 ... 
+2

Neden tablo/ızgara kullanın ve sadece öğe listenizde yinelemeyin, her bir öğe için özel bileşeninizin bir örneğini oluşturun ve bunları [dikey düzende] ekleyin (https://vaadin.com/docs/ -// part/framework/layout/layout-orderlayout.html) (veya belki bir [grid layout] (https://vaadin.com/docs/-/part/framework/layout/layout-gridlayout.html))? – Morfic

+0

Çok miktarda veri var ve konteyner destekli bileşenleri kullanmak istedim. – steve

+0

Bu garip tablo, bileşen ve ızgarayı kutudan çıkartamaz hale getirebilir. Sanırım, sadece diğer sütunları ve yalnızca bileşen sütununu görüntülemek istiyorsunuz. ancak sıralama gibi herhangi bir tablo işlevine ihtiyacınız yoksa, basit bir dikey tablo kullanabilirsiniz. – d2k2

cevap

0

Bir GeneratedPropertyContainer alongwith Izgara kullanabilirsiniz:

Sonra takip düzeninde tek bir kayıt sonucu düzenini kuran bir RecordResultComponent var.

Ardından, özel sütunda HtmlRenderer kullanabilirsiniz.

Umarım yardımcı olur. :-)