利用Asp.net 動態建立DataList— VB

來源:互聯網
上載者:User

Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load<br /> 'Put user code to initialize the page here<br /> Dim dl As New DataList<br /> dl.HeaderTemplate = New CreateDL(ListItemType.Header)<br /> dl.ItemTemplate = New CreateDL(ListItemType.Item)<br /> dl.AlternatingItemTemplate = New CreateDL(ListItemType.AlternatingItem)<br /> dl.FooterTemplate = New CreateDL(ListItemType.Footer)<br /> Dim d As New Data<br /> dl.DataSource = d.getTree<br /> dl.DataBind()<br /> div1.Controls.Add(dl)</p><p> End Sub</p><p>Public Class CreateDL<br /> Implements ITemplate<br /> Shared itemcount As Integer = 0<br /> Dim TemplateType As ListItemType</p><p> Sub New(ByVal type As ListItemType)<br /> TemplateType = type<br /> End Sub</p><p> Sub InstantiateIn(ByVal container As Control) Implements ITemplate.InstantiateIn<br /> Dim lc As New Literal<br /> Select Case TemplateType<br /> Case ListItemType.Header<br /> lc.Text = "<TABLE border=1><TR><TH>Items</TH></TR>"<br /> Case ListItemType.Item<br /> lc.Text = "<TR><TD>Item number: " '& itemcount.ToString & "</TD></TR>"<br /> AddHandler lc.DataBinding, AddressOf TemplateControl_Databinding<br /> Case ListItemType.AlternatingItem<br /> lc.Text = "<TR><TD bgcolor=lightblue>Item number: " _<br /> & itemcount.ToString & "</TD></TR>"<br /> Case ListItemType.Footer<br /> lc.Text = "</TABLE>"<br /> End Select<br /> container.Controls.Add(lc)<br /> itemcount += 1<br /> End Sub<br /> Private Sub TemplateControl_DataBinding(ByVal sender As Object, _<br /> ByVal e As System.EventArgs)<br /> Dim lc As Literal<br /> lc = CType(sender, Literal)<br /> Dim container As DataListItem<br /> container = CType(lc.NamingContainer, DataListItem)<br /> lc.Text &= DataBinder.Eval(container.DataItem, "text")<br /> lc.Text &= "</TD></TR>"<br /> End Sub</p><p>End Class</p><p>本文來自CSDN部落格,轉載請標明出處:http://blog.csdn.net/goody9807/archive/2004/10/16/138820.aspx

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.