Utilizzare i Repeater in Asp.NET e VB.NET

Mattepuffo's logo
Utilizzare i Repeater in Asp.NET e VB.NET

Utilizzare i Repeater in Asp.NET e VB.NET

I controlli Repeater di Asp.NET ci permettono di creare un elenco, di qualsiasi tipo, prendendo i dati da una sorgente (tipicamente un database).

Oggi vediamo come usarli in VB.NET.

Cominciamo con il controllo; ogni controllo ha a disposizione diverse "parti" che non siamo obbligati ad usare:

  • HeaderTemplate
  • ItemTemplate
  • FooterTemplate

Nel mio caso specifico ho usato solo il secondo:

<asp:Repeater ID="RepeaterCategories" runat="server">
    <ItemTemplate>
        <div class="body-catagories panel-group paragraph02" id="accordion">
            <div class="panel panel-default">
                <div class="panel-heading">
                    <h4 class="panel-title">
                        <a href="" class="collapsed paragraph02">
                            <%#Eval("Titolo") %>
                        </a>
                    </h4>
                </div>
            </div>
        </div>
    </ItemTemplate>
</asp:Repeater>

Vi ho lasciato anche il mio codice HTML, giusto per farvi rendere conto di come funziona.

Poi nel code behind:

Imports System.Data
Imports System.Data.SqlClient

Partial Class _Default
    Inherits System.Web.UI.Page
    Private oConn As New SqlConnection(ConfigurationManager.ConnectionStrings("connessione").ConnectionString)

    Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load
        If Not IsPostBack Then
            GetNewsCategories()
        End If
    End Sub

    Private Sub GetNewsCategories()
        If oConn.State = Data.ConnectionState.Closed Then
            oConn.Open()
        End If
        Dim cmdStr As String = "SELECT * FROM Categorie"
        Dim cmd As New SqlCommand(cmdStr, oConn)
        Dim ds As New DataSet
        Dim da As New SqlDataAdapter(cmd)
        da.Fill(ds)
        RepeaterCategories.DataSource = ds
        RepeaterCategories.DataBind()
        If oConn.State = Data.ConnectionState.Open Then
            oConn.Close()
        End If
    End Sub

End Class

Ovviamente se usate C# vi basterà tradurre questa parte di codice, e siete a posto.

In pratica ci connettiamo al db (la connessione è dentro al web.config) ed eseguiamo la nostra query.

Sotto riempiamo un DataSet e lo impostiamo come sorgente al nostro Repeater.

Il resto verrà fatto in automatico dal codice!

Enjoy!


Condividi

Commentami!