Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 16
  1. #1

    Recuperare dati da datagrid

    Sono un novizio nell'uso di asp.net è sto incontrando ora le mie prime difficoltà.

    Sto cercando di modificare dati da un datagrid, ma non riesco a recuperare i dati dalle caselle di testo che ottengo facendo

    DataGrid1.EditItemIndex = e.Item.ItemIndex;

    Non so proprio come intercettare i valori presenti nelle textbox che ottengo. Per sviluppare in asp.net sto usando c#...

    Potete aiutarmi???


    Per comodità vi posto il mio codice dellafunzione di update:
    private void DataGrid1_Update(object sender, DataGridCommandEventArgs e)
    {
    sqlUpdateCommand1.Parameters["@utenti_id"].Value = Convert.ToInt32(DataGrid1.Items[e.Item.ItemIndex].Cells[2].Text);

    sqlUpdateCommand1.Parameters["@utenti_user"].Value = DataGrid1.Items[e.Item.ItemIndex].Cells[3].Text;
    sqlUpdateCommand1.Parameters["@u_password"].Value = DataGrid1.Items[e.Item.ItemIndex].Cells[4].Text;


    connCed.Open();
    try
    {
    sqlUpdateCommand1.ExecuteNonQuery();
    Label2.Visible=true;
    Label2.Text="Utente Modificato";
    DataGrid1.EditItemIndex=-1;
    DataGrid1.DataBind();
    }
    catch //()//SQLExcetion ex)
    {
    Label2.Visible=true;
    Label2.Text="Impossibile Modificare l'utente";
    }

    //sqlDeleteCommand1.ExecuteNonQuery();
    connCed.Close();

    }

    Naturalmente le righe in grassetto sono quelle che non mi funzionano... Grazie

  2. #2
    Qual è l'errore precisamente?

    Comunque aggiungerei un cast:

    sqlUpdateCommand1.Parameters["@utenti_user"].Value = ((TextBox)DataGrid1.Items[e.Item.ItemIndex].Cells[3]).Text;
    sqlUpdateCommand1.Parameters["@u_password"].Value = ((TextBox)DataGrid1.Items[e.Item.ItemIndex].Cells[4]).Text;

    E così hai risolto un problema.. ora dimmi se funziona o ti da qualche altro errore

  3. #3
    Grazie per l'aiuto, purtroppo ho ancora problemi.... (a proposito prima non ottenevo errori, ma semplicemente mi tornavano tutti valori vuoti quando tentavo di recuperarli dal DataGrid).

    Ora quando vado a generare la soluzione l'applizazione mi da il seguente errore:
    Impossibile convertire il tipo 'System.Web.UI.WebControls.TableCell' in 'System.Web.UI.WebControls.TextBox'


    Seguendo il tuo consiglio io ho scritto le seguenti istruzioni:

    sqlUpdateCommand1.Parameters["@utenti_user"].Value = ((TextBox)DataGrid1.Items[e.Item.ItemIndex].Cells[5]).Text;
    sqlUpdateCommand1.Parameters["@u_password"].Value = ((TextBox)DataGrid1.Items[e.Item.ItemIndex].Cells[6]).Text;
    sqlUpdateCommand1.Parameters["@u_nome"].Value = ((TextBox)DataGrid1.Items[e.Item.ItemIndex].Cells[3]).Text;
    sqlUpdateCommand1.Parameters["@u_cognome"].Value = ((TextBox)DataGrid1.Items[e.Item.ItemIndex].Cells[4]).Text;
    sqlUpdateCommand1.Parameters["@u_tel"].Value = ((TextBox)DataGrid1.Items[e.Item.ItemIndex].Cells[7]).Text;
    sqlUpdateCommand1.Parameters["@u_cellulare"].Value = ((TextBox)DataGrid1.Items[e.Item.ItemIndex].Cells[8]).Text;


    Puoi aiutarmi???

  4. #4
    Aiuto........

  5. #5
    nel database i campi nome utente e password sono testi?
    tutti gli altri campi li inserisce correttamente?
    invece che
    ((TextBox)DataGrid1.Items[e.Item.ItemIndex].Cells[8]).Text
    prova con
    ((TextBox)Datagrid1.Items[e.Item.ItemIndex].Cells[8].Controls[0]).Text
    La cosa seccante di questo mondo è che gli stupidi sono sicuri di sé, mentre le persone intelligenti sono piene di dubbi. B. Russel

  6. #6
    Utente di HTML.it
    Registrato dal
    Jun 2002
    Messaggi
    1,183

    stesso problema ma in vb

    anche io ho problemi a recuperare i dati da questo
    <asp:boundcolumn HeaderText="indirizzo utente" DataField="indirizzo" />

    io lavoro in vb

    Grazie
    victor
    ----------------------

  7. #7
    Qualche passo avanti lo abbiamo fatto

    Ora riesco a recuperare i dati dal datagrid, ma con questa sintassi
    ((TextBox)Datagrid1.Items[e.Item.ItemIndex].Cells[8].Controls[0]).Text
    recupero il valore che si trovava nella textbox, prima della modifica da parte dell'utente!!!

    Purtroppa ancora non ci siamo...

  8. #8
    ma recuperi il valore della tua textbox in un evento che è successivo all'inserimento? :master:
    La cosa seccante di questo mondo è che gli stupidi sono sicuri di sé, mentre le persone intelligenti sono piene di dubbi. B. Russel

  9. #9
    esattamente!!!

    Vado in modalità modifica del Datagrid, cambio i valori all'interno delle TextBox, poi clicco su aggiorna; non riesco a questo punto a recuperare i valori modificati nelle textbox, ma quelli preesistenti!!!
    So che è una cosa strana, ma è così.....

  10. #10
    il problema potrebbe essere che ogni volta che clicchi su un pulsante prima di arrivare al tuo evento passi dal page_load.
    è nel page load che inserisci il valore iniziale nel tuo datagrid?
    comunque non so te, ma io non sono mai riuscita a utilizzare l'EditCommand in modo decente, mi ha sempre dato dei problemi
    di solito lo evito
    La cosa seccante di questo mondo è che gli stupidi sono sicuri di sé, mentre le persone intelligenti sono piene di dubbi. B. Russel

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.