Al momento no... più tardi in caso... ma non saprei proprio che parte del codice postare (dovrei postare tutta la pagina)...
...cmq a parte questo provo a spiegare quello che ho fatto:
GridView + ObjectDataSource (collegata ad un file DataSet in cui sono presenti i vari TableAdapter e le varie Query) = tutto ok funziona tutto perfettamente
...aggiunta di una TextBox (con relativo bottone "Cerca") e di una DropDownList... i cui valori andranno ad essere i parametri del filtro.
...avrei potuto fare una nuova query con i parametri in modo che venissero recuperati solo i dati da visualizzare in base ai filtri... ma non sapendo come cambiare a runtime la query che andrà ad utilizzare l'ObjectDataSource (probabilmente, se non sicuramente questa sarebbe la soluzione al piccolo problemino che si verifica ora)...
...invece per comodità... ho semplicemente settato il parametro Filter Expression e ho aggiunto i due FilterParameters legati alla TextBox e alla DDL... in questo modo è molto piu semplice e si evitano problemi di code injection (o per lo meno cosi ho letto) ma vabbè al di là di questo, probabilmente è normale che mi si verichi il problema perchè in realtà l'ODS carica tutti i dati e poi ne fa vedere solo alcuni in base al filtro... però allo stesso tempo mi sembra strano che se clicco su modifica di una riga filtrata in realtà mi faccia modificare sì quella riga ma la prende dalla lista non filtrata che ha in memoria e quindi in pratica è come se modificassi una riga sbagliata...
...esempio:
LISTA NON FILTRATA:
NOME COGNOME ETA'
1 Mario Rossi 10
2 Andrea Bianchi 25
3 Paolo Verdi 13
4 Luca Verdi 25
...filtro per esempio per Cognome = "Verdi"
LISTA FILTRATA:
NOME COGNOME ETA'
1 Paolo Verdi 13
2 Luca Verdi 25
...ora vado a modificare il secondo cioè "Luca Verdi"... ecco è qui che si verifica il problema perchè invece che modificare Luca Verdi nel template di modifica mi compare Andrea Bianchi... e cioè sì il secondo ma della lista non filtrata.
Penso sia un bug... per risolvere come ho detto prima credo dovrei impostare il filtro direttamente nella query... però questo dovrei farlo a runtime...
Grazie ancora