Visualizzazione dei risultati da 1 a 7 su 7

Discussione: edit datagrid

  1. #1

    edit datagrid

    ciao a tutti ! volevo utilizzare quell'interessante funzione del datagrid che permette l'edit "in diritta" sulla tabella inserendo nella riga prescelta i textbox

    ma non mi funziona ! prende sempre il valore precedente (cioè prima dell'inserimento, quindi di fatto non moficica il record !)

    ---------------------------------------------------------
    sub com_edit(a as object, e as datagridcommandeventargs)
    datagrid1.edititemindex = e.item.itemindex
    datagrid1.databind()
    end sub
    ---------------------------------------------------------
    e
    ---------------------------------------------------------
    sub upd(a as object, e as datagridcommandeventargs)
    Dim val As TextBox = E.Item.Cells(2).Controls(0)
    label1.text=val.text
    dim str_upd as string ="UPDATE generale SET valore1='"& val.text & "' WHERE ID="& E.Item.Cells(1).Text

    dim cnx as new Oledbconnection("Provider=Microsoft.Jet.OLEDB.4.0; Data Source = " & server.mappath("/net_prv/database/tmc.mdb"))
    dim com_upd as new oledbcommand(str_upd, cnx)
    cnx.open()
    com_upd.executenonquery()
    cnx.close()
    datagrid1.edititemindex=-1
    datagrid1.databind()
    end sub
    ---------------------------------------------------------
    Frate Priore: "È Lucifero in persona!"
    Trinità: "Lo conosci?"
    Bambino: "Mai sentito nominare, deve essere un professionista dell'est"

  2. #2
    Utente di HTML.it L'avatar di Legnetto
    Registrato dal
    May 2002
    Messaggi
    1,419
    Se fai il databind prima dell'update salvi sempre i dati che prendi dal database.
    Ciao
    Legnetto

  3. #3
    e quale databind devo togliere ? il 1° nel comando edit (che dovrebbe essere quello che permette di visualizzare le textbox) o nel 2° che fa invece l'update ?

    io poi l'ho messo in fondo ... secondo mè dovrebbe prima fare l'update e poi "databindare" il datagrid ... giusto ?

    grazie per il tuo intervento
    Frate Priore: "È Lucifero in persona!"
    Trinità: "Lo conosci?"
    Bambino: "Mai sentito nominare, deve essere un professionista dell'est"

  4. #4
    Utente di HTML.it L'avatar di Legnetto
    Registrato dal
    May 2002
    Messaggi
    1,419
    In genere quando carichi una pagina la prima volta fai il databind per riempire i controlli o i grid con i dati.
    Quando fai questo richiami una routine, ma lo devi fare solo la prima volta!
    Quindi:
    Nel page_Load
    If not IsPostBack then 'Se è la prima volta che carichi
    '''Richiami la routine per associare i dati'''
    End if
    Poi giustamente quando sono stati recuperati e salvati fai fare nuovamente il databind per visualizzare quelli aggiornati.
    Magari ti ho detto cose che sai già ma, la prima volta che mi è successo per capire dove sbagliavo ho impiegato un sacco di tempo.
    Ciao
    Legnetto

  5. #5
    ah ! vabbè, stasera provo e vediamo cosa esce.

    che casotto sto .net !

    grazie ancora
    Frate Priore: "È Lucifero in persona!"
    Trinità: "Lo conosci?"
    Bambino: "Mai sentito nominare, deve essere un professionista dell'est"

  6. #6
    funziona ! era come dicevi tu... ho smanettato un poco con i databind e adesso funziona

    scusa ti chiedo un' ultima cosetta; per il momento tutto il codice ce l'ho dentro al file aspx il codebehind non l'ho mai nemmeno aperto (tra un pò ci arrivo, solo che stranamente l'argomento è trattato nelle ultime parti del libro)
    Se ho diverse sub per i vari eventi che devo gestire e questi mi richiedono ad esempio la stringa di connessione, per il momento ho risolto copiando e incollando in ciascuno di essi... ma non è certo la procedura corretta.
    Come faccio a rendere una variabile disponibile tra diverse sub (nel file aspx ! nel codebehind credo si scriva public)?

    e non si può fare con un bell'include come ai tempi del buon vecchio asp ?

    grazie ancora
    Frate Priore: "È Lucifero in persona!"
    Trinità: "Lo conosci?"
    Bambino: "Mai sentito nominare, deve essere un professionista dell'est"

  7. #7
    Utente di HTML.it L'avatar di Legnetto
    Registrato dal
    May 2002
    Messaggi
    1,419
    La stringa di connessione la puoi mettere nel global come in asp oppure nel web.config
    Per i "sottoprogrammi" ti puoi creare una classe personalizzata con dentro le routine che usi più spesso.
    Ciao
    Legnetto

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.