Chapter 9. 視圖
eXtremeTable里視圖是可插接的,這意味著html很容易改變,或者一類新的導(dǎo)出能夠被實(shí)現(xiàn)。 所有需要做的就是實(shí)現(xiàn)View接口并在TableTag或ExportTag中設(shè)置view屬性。首先,讓我們看一下View接口:
public interface View {
public void beforeBody(TableModel model);
public void body(TableModel model, Column column);
public Object afterBody(TableModel model);
}
實(shí)現(xiàn)View接口的類有三次插入內(nèi)容的機(jī)會(huì)。beforeBody()方法會(huì)被立刻調(diào)用; body()方法在每一行的每一列處理的時(shí)候調(diào)用;afterBody()方法是被eXtremeTable調(diào)用的 最后方法,它將返回代表視圖的一個(gè)對(duì)象,通常它是一個(gè)字符串。例如:在HTML視圖類中為的html 標(biāo)簽(markup),當(dāng)然它可以是任何東西。最主要的原因是定制導(dǎo)出時(shí),你應(yīng)該返回一些其他的對(duì)象。
eXtremeTable的所有標(biāo)簽(markup)在兩個(gè)地方生成:View或Cell。 組合使用他們, 能為你提供一種可插接的表示內(nèi)容的解決方案。為了使用定制的View, 只需要使用TableTag的view屬性來指定實(shí)現(xiàn)View接口的實(shí)現(xiàn)類的 全路徑:
<ec:table
items="presidents"
action="${pageContext.request.contextPath}/presidents.run"
view="com.mycompany.view.MyCustomView"
>
...
</ec:table>
與表視圖不同,export的所有標(biāo)簽都在View中生成。為了使用定制的View, 只需要使用ExportTag的view屬性來指定實(shí)現(xiàn)View接口的實(shí)現(xiàn)類的 全路徑:
<ec:table
items="presidents"
action="${pageContext.request.contextPath}/presidents.run"
>
<ec:export
fileName="custom.file"
tooltip="Export Custom"
view="com.mycompany.view.MyCustomExportView"/>
...
</ec:table>
posted on 2006-02-28 09:52 Lucky 閱讀(464) 評(píng)論(0) 編輯 收藏 所屬分類: extremeComponents