Visualizzazione dei risultati da 1 a 8 su 8
  1. #1

    Non riesco ad assegnare un valore ad una label in un repeater

    Ciao ragazzi,
    come da oggetto ottengo da una sub che parte all'onload un numero che rappresenta il numero dei messaggi inseriti in un db.

    Adesso se provo ad inserire questo valore come semplice
    Lblnome.text = variabile
    mi dà errore.

    Come faccio ad aggiungere questo valore alla label presente nel repeater.

    Ho cercato un pò in giro che posso usare itemdatabound, ma non riesco ad assegnarrgli il valore della variabile.

    Spero di essere stato chiaro nella spiegazione.
    Grazie a tutti

  2. #2
    scusatemi se uppo ragazzi...
    nessuno sa dirmi cosa sbaglio e come posso risolverE?

    Grazie come sempre

  3. #3
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    Fai un esempio ridotto all'osso. Fai vedere il codice e poi si può discutere
    Pietro

  4. #4
    ok eccolo:

    Questo è il repeater che sta in un UC
    codice:
    <asp:Repeater ID=RptBacheca runat=server
     OnItemDataBound = RptBacheca_ItemDataBound
    >
    <HeaderTemplate>
    <table width=577 height=165 cellpadding=0 cellspacing=0 class=testo_nero_big 
    style="background-image:url(images/sfondo_bacheca.jpg); background-repeat:no-repeat; background-position:left top;">
    </HeaderTemplate>
    
    <ItemTemplate>
    <tr>
    <td style="padding-left:30px;">
    
    
    Gent.mo <span class=testo_rosso_big><%#Container.dataitem("nome_utente") %> <%#container.dataitem("cognome_utente") %></span>
    
    il suo accesso risale a <span class=testo_rosso_big><%#CData(Container.DataItem("accesso_utente"))%></span>
    
    
    Ha <asp:Label ID="LblConta" runat=server></asp:Label>  non letti nella sua bacheca. 
    
    Clicchi qui per visualizzare i suoi messaggi.
    </td>
    
    </tr>
    
    </ItemTemplate>
    
    <FooterTemplate>
    </table>
    </FooterTemplate>
    </asp:Repeater>
    Come vedi ci sono sia valori presi da un dataset sia un label. sui primi tutto ok, ma sul secondo nada...
    Questa è la sub che viene chiamata nel pageload e mi dà il valore conta che da come avrai capito è il risultato del numero totale dei messaggi in bacheca per quell'utente.

    codice:
    Sub ContaMessaggi()
            Dim MySQL, MySQL2 As String
            Dim MyDR, MyDR2 As Data.OleDb.OleDbDataReader
            Dim MyCMD, MyCMD2 As Data.OleDb.OleDbCommand
            Dim ID_bacheca, id_utente, id_singolo As String
            Dim ArrayIdUtente As Array
    
    
            Dim Conn As New Data.OleDb.OleDbConnection(System.Configuration.ConfigurationManager.AppSettings("ConnectionString"))
            Conn.Open()
    
            MySQL = "SELECT * FROM tab_bacheca WHERE letto_bacheca = false AND elimina_bacheca = false"
    
            MyCMD = New Data.OleDb.OleDbCommand(MySQL)
            MyCMD.Connection = Conn
    
            MyDR = MyCMD.ExecuteReader
            conta = 0
            If MyDR.HasRows Then
                Do While MyDR.Read
                    id_utente = MyDR.Item("id_utente")
                    ArrayIdUtente = Split(id_utente, ";")
    
    
                    Dim i As Integer
    
                    For i = 0 To UBound(ArrayIdUtente)
                        id_singolo = ArrayIdUtente(i)
    
                        If id_singolo = Session("utente").ToString Then
                            'Response.Write("ok")
    
                            conta = conta + 1
                            'Response.Write(id_singolo & "
    ")
                        End If
                    Next
                Loop
    
                lblconta.text = conta
    
            End If
    
        End Sub

  5. #5
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    :master: non ho provato.

    Invece di mettere <asp:Label ID="LblConta" runat="server"></asp:Label> prova a mettere:

    <%#messaggi_non_letti%>

    dove messaggi_non_letti è una variabile o funzione protected che restituisce una stringa
    Pietro

  6. #6
    mmm no, ci avevo provato.
    In pratica mettendo
    public conta as integer

    E scrivendo <%#conta%>

    ma così mi restituisce sempre 0 in quanto poi il valore di conta viene calcolato dopo.

  7. #7
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    Originariamente inviato da zetaweb
    mmm no, ci avevo provato.
    In pratica mettendo
    public conta as integer

    E scrivendo <%#conta%>

    ma così mi restituisce sempre 0 in quanto poi il valore di conta viene calcolato dopo.
    al posto di conta, non puoi mettere ContaMessaggi?

    protected function ContaMessaggi() as string
    ***
    return conta
    end function
    Pietro

  8. #8
    giustissimo!!!
    Perfetto, grazie mille pietro09!

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.