Visualizzazione dei risultati da 1 a 6 su 6

Discussione: repeater particolare

  1. #1
    Utente di HTML.it L'avatar di mexican
    Registrato dal
    Oct 2001
    residenza
    cava de tirreni
    Messaggi
    3,541

    repeater particolare

    non sapevo che titolo mettere....
    Ora vi spiego cosa devo fare, ho un repeater e fin qui tutto ok. Lo creo prendo i dati dal Db e lo visualizzo. Però devo fare una cosa particolare ecco la struttura del repeater:

    Comune Prodotto Tot
    Roma xxxx 10
    Milano xxx 5
    aaa 21
    ccc 10
    Napoli zzz 20


    Ecco io non devo far ripetere milano per ogni prodotto, perchè al momento me lo ripete.
    Come devo fare?

  2. #2
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    codice:
            <asp:Repeater ID="Repeater1" runat="server" EnableViewState="false">
                <HeaderTemplate>
                    <table>
                        <tr>
                            <td class="sottolineato">Comune</td>
                            <td class="sottolineato">Prodotto</td>
                            <td class="sottolineato">Totale</td>
                        </tr>
                </HeaderTemplate>
                <ItemTemplate>
                    <tr>
                        <td><%#comune(Container.DataItem)%></td>
                        <td><%#l.NullToStringCodificato(Eval("Prodotto"))%></td>
                        <td><%#l.NullToStringCodificato(Eval("Totale"))%></td>
                    </tr>
                </ItemTemplate>
                <FooterTemplate>
                    </table>
                </FooterTemplate>
            </asp:Repeater>
    codice:
        Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
            BindData()
        End Sub
    
        Private Sub BindData()
            msole.DataBind(Me.Repeater1, gl.StringaConnessioneTest, "select * from tabella19 order by comune, prodotto")
        End Sub
    
        Protected _comune As String = ""
        Protected Function comune(ByVal DataItem As Object) As String
    
            Dim dr As System.Data.Common.DbDataRecord = DirectCast(DataItem, System.Data.Common.DbDataRecord)
            Dim s As String = l.NullToString(dr("comune"))
    
            If s = Me._comune Then
                Return ""
            Else
                Me._comune = s
                Return s
            End If
        End Function
    Pietro

  3. #3
    Utente di HTML.it L'avatar di mexican
    Registrato dal
    Oct 2001
    residenza
    cava de tirreni
    Messaggi
    3,541

    mmm

    Originariamente inviato da pietro09
    codice:
            <asp:Repeater ID="Repeater1" runat="server" EnableViewState="false">
                <HeaderTemplate>
                    <table>
                        <tr>
                            <td class="sottolineato">Comune</td>
                            <td class="sottolineato">Prodotto</td>
                            <td class="sottolineato">Totale</td>
                        </tr>
                </HeaderTemplate>
                <ItemTemplate>
                    <tr>
                        <td><%#comune(Container.DataItem)%></td>
                        <td><%#l.NullToStringCodificato(Eval("Prodotto"))%></td>
                        <td><%#l.NullToStringCodificato(Eval("Totale"))%></td>
                    </tr>
                </ItemTemplate>
                <FooterTemplate>
                    </table>
                </FooterTemplate>
            </asp:Repeater>
    codice:
        Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
            BindData()
        End Sub
    
        Private Sub BindData()
            msole.DataBind(Me.Repeater1, gl.StringaConnessioneTest, "select * from tabella19 order by comune, prodotto")
        End Sub
    
        Protected _comune As String = ""
        Protected Function comune(ByVal DataItem As Object) As String
    
            Dim dr As System.Data.Common.DbDataRecord = DirectCast(DataItem, System.Data.Common.DbDataRecord)
            Dim s As String = l.NullToString(dr("comune"))
    
            If s = Me._comune Then
                Return ""
            Else
                Me._comune = s
                Return s
            End If
        End Function
    l che variabile è? siccome non è dichiarata.

  4. #4
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116

    Re: mmm

    Originariamente inviato da mexican
    l che variabile è? siccome non è dichiarata.
    Non devi pretendere di avere codice che si adatti perfettamente al tuo caso.

    Io ho fatto una prova con Visual studio usando una mia libreria, dichiarata come:

    Imports l = libreria.ModuloWeb


    Te devi semplicemente guardare come ho fatto e adattare al tuo caso.

    Come vedi, il comune viene valorizzato tramite il metodo comune()

    <td><%#comune(Container.DataItem)%></td>

    a cui passo come parametro, il Container.DataItem

    Questo metodo non fa altro che confrontare il comune attuale col precedente (memorizzato nella variabile _comune:
    se uguale, restituisce la stringa vuota, altrimenti, il comune
    Pietro

  5. #5
    Utente di HTML.it L'avatar di mexican
    Registrato dal
    Oct 2001
    residenza
    cava de tirreni
    Messaggi
    3,541

    Re: Re: mmm

    Originariamente inviato da pietro09
    Non devi pretendere di avere codice che si adatti perfettamente al tuo caso.

    Io ho fatto una prova con Visual studio usando una mia libreria, dichiarata come:

    Imports l = libreria.ModuloWeb


    Te devi semplicemente guardare come ho fatto e adattare al tuo caso.

    Come vedi, il comune viene valorizzato tramite il metodo comune()

    <td><%#comune(Container.DataItem)%></td>

    a cui passo come parametro, il Container.DataItem

    Questo metodo non fa altro che confrontare il comune attuale col precedente (memorizzato nella variabile _comune:
    se uguale, restituisce la stringa vuota, altrimenti, il comune
    ah ok scusa... non avevo capito che faceva la funziona

  6. #6
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116

    Re: Re: Re: mmm

    Originariamente inviato da mexican
    ah ok scusa... non avevo capito che faceva la funziona
    Dimmi solo se va, così mi archivio l'esempio per usi futuri
    Pietro

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.