前兩節 在 GridView 控制項中使用 TemplateField、在 DetailsView 控制項中使用 TemplateField 見識 TemplateField` 自訂 GridView`、`DetailsView` 輸出。TemplateField` 賦予高度自主定義特定欄位能力,但 GridView`、`DetailsView` 終究較規則,簡單說皆有四四方方格狀外觀。多數情況不錯,但有時需要不規則顯示外觀。顯示單一記錄時,FormView` 控制項可實現較隨意外觀呈現。
異於 DetailsView`,FormView` 非由雜七雜八欄位組成。無法加入 BoundField` 或 TemplateField`,但 FormView` 使用模板呈現。可理解為僅含一個 TemplateField` 的 DetailsView`。FormView` 支援模板:
ItemTemplate` — 呈現特定記錄HeaderTemplate` — 可選頁首列FooterTemplate` — 可選頁尾列EmptyDataTemplate` — 資料源缺記錄時替代 ItemTemplate`PagerTemplate` — 啟用分頁時自訂分頁介面EditItemTemplate` / InsertItemTemplate` — 支援編輯/插入時自訂介面解釋使用 FormView` 為產品呈現不規則外觀。ItemTemplate` 使用頁首元素與 <table>` 結合顯示名稱、分類、供應商等值,而非各種欄位(見圖 1)。

圖一:FormView 打破了 DetailsView 的那種格子一樣外觀
開啟 FormView.aspx`,從工具箱拖 FormView` 至設計器。剛加入時為灰色方塊,告訴我們需 ItemTemplate`。

圖二:FormView 在添加一個 ItemTemplate 之前是不會在設計器中呈現出來的