Importare da gridview a textbox

giovedì 22 ottobre 2009 - 09.43

manuelericci Profilo | Newbie

Ciao a tutti sono di nuovo quì
sto cercando di importare da una GridView i valori in una TextBox, cliccando su Seleziona, quindì ho stritto questo codice

Protected Sub GridView1_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles GridView1.SelectedIndexChanged
Dim area As String = e.Values("area")
End Sub

mi da un'errore quì e.Values("area") non è un membro di System.EventArgs

Altrimenti mi suggerite come applicare un Redirect o Refresh della pagina successivamente alla modifica del campo ?

alx_81 Profilo | Guru

>Ciao a tutti sono di nuovo quì
Ciao e Benvenuto su DotNetHell!

>Altrimenti mi suggerite come applicare un Redirect o Refresh
>della pagina successivamente alla modifica del campo ?
guarda la documentazione di quell'evento,
http://msdn.microsoft.com/it-it/library/system.web.ui.webcontrols.gridview.selectedindexchanged%28VS.80,classic%29.aspx
noterai che devi accedere alla riga che stai considerando, tramite TuaGridView.SelectedRow (http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.gridview.selectedrow.aspx).

Una volta che hai la riga, devi accedere alla cella che ti serve tramite la collezione Cells e poi se hai all'interno di essa un controllo (come un TextBox) puoi usare il FindControl() passando l'id per ottenere la sua istanza.

TableCell.FindControl Method
http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.tablecell.findcontrol.aspx

--

Alessandro Alpi | SQL Server MVP

http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
http://italy.mvps.org

Gluck74 Profilo | Guru

vorrei che mi spiegassi meglio la situazione:

hai una griglia ed un textBox, questo l'ho capito...
credo che questo textBox sia magari sotto la griglia, e cliccando il pulsante "seleziona" che sta in ogni riga della griglia, vuoi copiare il valore di una cella dentgro il textBox, giusto?

Io lo farei con javascript.
<script type="text/javascript"> function seleziona(valore) { var textDestinazione = document.getElementById('<%= TextBox1.ClientID %>'); textDestinazione.value = valore; } </script>

inoltre, nella griglia aggiungi questa colonna:
<asp:TemplateField ShowHeader="False" HeaderText="CMD"> <ItemTemplate> <asp:Button ID="btnSeleziona" runat="server" CausesValidation="False" CommandName="Select" Text="Select" /> </ItemTemplate> </asp:TemplateField>

e questo codice:
protected void GridView1_RowCreated(object sender, GridViewRowEventArgs e) { GridViewRow myRow; if (e.Row.RowType == DataControlRowType.DataRow) { Button mybtn = (Button)e.Row.FindControl("btnSeleziona"); if (mybtn != null) mybtn.OnClientClick = string.Format("seleziona('{0}');return false;", ((DataRowView)e.Row.DataItem)["<nomeDellaColonna>"].ToString()); } }

ciao ciao


alex... abbiamo invertito i ruoli.... ha ha ha

alx_81 Profilo | Guru

>alex... abbiamo invertito i ruoli.... ha ha ha
eh succede
ciao collega!

--

Alessandro Alpi | SQL Server MVP

http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
http://italy.mvps.org

manuelericci Profilo | Newbie

Si Gluck74 intedevo dire proprio quello che hai descritto, ne approfitto per chiederti un' informazione
ho convertito un db Access in SQL quindi ho realizzato un GridView per la correzione, cancellazione dei dati, inoltre ho realizzato un modulo per l'inserimento di nuovi dati, quest'ultimo funziona correttamente inserisce i valori senza problemi, ma se provo a modificare e/o a cancellare un dei dati inseriti non succede nulla un semplice AutoPostBack senza modificare o cancellare niente, ho pensato che fosse un probelma di permessi di modifica e cancellazione sul db ma non ho idea se può essere il vero problema ne dove poter controllare questi permessi.

Gluck74 Profilo | Guru

he he.. così senza codice è un po difficile.
potrebbe essere sia il modulo, sia l'accesso alle tabelle.

dunque, la gridview come si attacca ai dati? con un sqlDataSource? e la stringa di connessione ha le credenziali di accesso salvate?
il modulo per salvare è agganciato agli eventi della gridview o fa per conto suo??

dammi qualche informazione in più a magari qualche pezzetto di codice.

ciao

manuelericci Profilo | Newbie

Gluk tutto ok in parte, ho scoperto che i dati importati da un db Access e poi successivamente salvati su un db SQL non possono essere modificati, mentre se poi inseristo un nuovo dato questo può essere modificato, cancellato etc.
Rimango un pò perplesso.... non so.
In ogni caso per verificare queste procedure ho realizzato delle normalissime datagrid con le funzioni di seleziona, modifica, cancella.

Se ti viene qualche idea fammi sapere.

Ciao e grazie 1000 per la tua disponibilità

Gluck74 Profilo | Guru

>Gluk tutto ok in parte, ho scoperto che i dati importati da un
>db Access e poi successivamente salvati su un db SQL non possono
>essere modificati, mentre se poi inseristo un nuovo dato questo
>può essere modificato, cancellato etc.
non ci voglio credere. anzi, non ci credo proprio.
un dato salvato su un db SQL, è sempre un dato su un DB, cosa importa da dove arriva?

sicuramente c'è un inghippo da qualche parte, ma senza codice o almeno uno "schemino" di quello che hai nella pagina e cosa fai.... non posso aiutarti

martinez Profilo | Senior Member

Ciao!

hai provato a controllare che nella tua griglia si faccia riferimento al DataKeyNames ... l'elenco separato da virgole dei campi chiave nell'origine dati???

se questi dovessere mancare non è possibile effettuare aggiornamenti e/o cancellazioni nell'origine dati ...

Fammi sapere

Ciao

manuelericci Profilo | Newbie

non so più che pesci prendere se lascio la colonna timestamp mi da questo errore timestamp è incompatibile con sql_variant
se la elimino non modifica nulla, la colonna l'ha creata il sistema in fase di importazione dei dati.

bo.....
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5