除靜態 HTML 與資料繫結語法,模板也可包含 Web 控制項與使用者控制項。這些控制項屬性可透過宣告語法、資料繫結語法或伺服器端事件處理程式化設定。
將控制項嵌入模板可自訂介面、提升用戶體驗。例如 在 GridView 控制項中使用 TemplateField 學習在 GridView TemplateField 加入 Calendar 控制項顯示僱用日期;在 給編輯和新增界面增加驗證控件和定制數據修改界面 學習透過驗證控制項、TextBox、DropDownList 等自訂編輯、插入介面。
模板也可包含其他資料控制項,即 DataList 在模板中可包含另一個 DataList(或 Repeater、GridView、DetailsView 等)。挑戰在於將資料繫結至內層資料控制項,有多種方法:從宣告式 ObjectDataSource 到直接程式化繫結。
探索使用巢狀 Repeater。外層 Repeater 將每個分類顯示為項目,包含分類名稱與描述。每個分類項目內的 Repeater 顯示該分類下的所有產品(見圖 1)。將分別學習宣告式與程式化方法建立內層 Repeater。

圖 1:分類與屬於它的產品一起被列出