Gv. headerTemplate = new createDL (ListItemType. header); <br/> gv. itemTemplate = new createDL (ListItemType. item); <br/> gv. alternatingItemTemplate = new createDL (ListItemType. alternatingItem); <br/> gv. footerTemplate = new createDL (ListItemType. footer); <br/> DataTable dt = new DataTable (); <br/> gv. dataSource = dt; <br/> gv. dataBind (); </p> <p> public class createDL: ITemplate <br/> {<br/> public int itemcount = 0; <br/> ListItemType TemplateType; <br/> public createDL (ListItemType) <br/>{< br/> TemplateType = type; <br/>}< br/> public void InstantiateIn (Control container) <br/>{< br/> Literal lc = new Literal (); <br/> switch (TemplateType) <br/>{< br/> case ListItemType. header: <br/> lc. text = "<TABLE border = 1> <TR> <TH> Items </TH> </TR>"; <br/> break; <br/> case ListItemType. item: <br/> lc. text = "<TR> <TD> Item number:" + itemcount. toString () + "</TD> </TR>"; <br/> lc. dataBinding + = new EventHandler (TemplateControl_Databinding); <br/> break; <br/> case ListItemType. alternatingItem: <br/> lc. text = "<TR> <TD bgcolor = lightblue> Item number:" + itemcount. toString () + "</TD> </TR>"; <br/> break; <br/> case ListItemType. footer: <br/> lc. text = "</TABLE>"; <br/> break; <br/>}< br/> container. controls. add (lc); <br/> itemcount + = 1; <br/>}< br/> public void TemplateControl_Databinding (object sender, System. eventArgs e) <br/>{< br/> Literal lc = (Literal) sender; <br/> DataListItem container = (DataListItem) lc. namingContainer; <br/> lc. text = lc. text + DataBinder. eval (container. dataItem, "Name"); <br/> lc. text + = "</TD> </TR>"; <br/>}</p> <p>}