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

    Datagrid e riga da modificare

    ho un problema che mi sta facendo impazzire:
    ho un datagrid nel quale quando vado in modifica devo prendere i valori che ho modificato a video e inserirli nel db.
    il fatto è che quando vado a prelevare i dati con la tecnica:

    valore = CType(e.Item.FindControl("nomeTXT"), System.Web.UI.WebControls.TextBox).Text

    il valore che ottengo non è quello nuovo che ho inserito, ma è il valore che avevo caricato precedentemente dal db...in pratica non riesco a prendere il valore nuovo ma prendo sempre quello che ho caricato in quella riga in fase di Load della pagina...
    cosa sbaglio? qualche impostazione?
    vi prego ne sto uscendo pazzo

  2. #2
    Utente di HTML.it L'avatar di Legnetto
    Registrato dal
    May 2002
    Messaggi
    1,419
    Classico errore di ricaricamento del datagrid prima di intercettare i valori modificati.
    Passa le routine con il debug e vedrai che da qualche parte prima di salvare ricarichi la griglia.
    Ciao
    Legnetto

  3. #3
    intanto grazie per l'intervento...
    provo a spiegarmi meglio:
    io carico i dati nel datagrid per la modifica, infatti mi si riempiono i textbox con i valori giusti e appaiono i tasti aggiorna e annulla, tipico di quando siamo in fase di editing del datagrid..
    ora il problema è che io modifico il valore in un textbox e cliccando sul tasto "Aggiorna" del datagrid vado a scatenare l'evento :

    Private Sub DATAGRID_UpdateCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataGridCommandEventArgs ) Handles DATAGRID.UpdateCommand

    giusto?questa non è la prima cosa che fa la mia pagina quando clicco quel tasto? perche all'interno della sub io come prima cosa verifico il valore modificato con :

    valore = CType(e.Item.FindControl("nomeTXT"),System.Web.UI. WebControls.TextBox).Text

    e il valore che prendo non è quello che io ho modificato, ma quello che avevo caricato prima... dove sbaglio? se quell'evento è il primo ad essere scatenato al click del pulsante "Aggiorna" io non ricarico niente prima di accedere al dato... come mai mi prende il valore precedente alla mia modifica?
    spero di esser stato chiaro...

  4. #4
    Utente di HTML.it L'avatar di Legnetto
    Registrato dal
    May 2002
    Messaggi
    1,419
    il primo evento di quelli tradizionali è il page_load, se non verifichi quando carichi la griglia se la pagina è stata rimandata al server, ti ritrovi i dati caricati dal db e non quelli modificati nel browser.
    Ti ho suggerito il debug per verificare appunto l'ordine degli eventi.
    Ciao

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.