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

    Modifica dati filtrati di una GridView

    Ciao a tutti! Devo modificare un record filtrato dai una gridview. Cliccando sul link "Modifica" che è un CommandField, mi riporta alla gridview completa, non filtrata, facendomi modificare il primo record della tabella, e non quello che io ho filtrato.

    Come posso fare per modificare il record filtrato?

    Non conosco molto bene ASP.NET nè VB, che uso nel CodeBehind, quindi abbiate molta pazienza.

    Grazie a quanto potranno aiutarmi.

  2. #2
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,887
    Controlla il bind della Grid, di solito si comporta cosi' quando non è dentro la if del postback della pagina

  3. #3
    Ok, ora mi lascia modificare il record selezionato. Però è uscito un altro problema: nel momento in cui l'ho modificato e clicco su "update" non lo aggiorna, quindi è come se non avessi fatto nulla. Ho pensato fosse un problema di refresh, ma anche ricaricando la pagina la modifica del record non appare. non va proprio a scrivere sul db, cosa che prima, seppur nel modo sbagliato, faceva.

    Ti allego il codice Page_Load, sicuramente ho dimenticato qualcosa. Cmq l'evento modifica non è gestito in VB ma solo in ASP.NET.

    codice:
    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load 
    DetailDico.Visible = False 
    lblInsDico.Visible = False 
    btnExcel.Visible = True 
    GridDico.Visible = True btnInsert.Visible = True 
    lblNoDisp.Visible = False 
    
    If Page.IsPostBack Then 
    GridViewDataBind() 
    End If 
    
    End Sub

    mentre il codice del link update è il seguente, posto all'interno della gridview

    codice:
    <asp:CommandField ButtonType="Link" EditText="Modifica" ShowEditButton="true" UpdateText="Aggiorna" CancelText="Annulla" />

  4. #4
    Sono Riuscita a risolvere i problemi!!
    Ho dovuto agiungere il seguente codice al Page_Load:

    codice:
    GridDico.EnableViewState = False 
    If Page.IsPostBack Then  
    GridViewDataBind() End If 
    GridDico.EnableViewState = False

    e ho dovuto aggiungere la seguente Subroutine:

    codice:
    Protected Sub GridDico_RowUpdated(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewUpdatedEventArgs) Handles GridDico.RowUpdated GridDico.EnableViewState = True 
    End Sub
    Non so se è il metodo migliore, ma funziona!
    Se hai qualche consiglio per migliorare il codice, è sempre bene accetto!

    Grazie per avermi portata sulla strada giusta per la soluzione!

  5. #5
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,887
    ma in quale evento effettui l'UPDATE ?

  6. #6
    L'update lo faccio nella ricerca, quando vado a ripopolare la tabella.

    Nella gridview prima era gestito automaticamente, andavo a modificare, cliccavo sul tasto update e faceva tutto da solo.

    Oltre al codice aggiunto, non so cos'altro fare.

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.