17 messaggi dal 29 marzo 2008
ciao a tutti,
scrivo perchè ho un problema con il Findcontrol.
Attualmente ho due problemi in sospeso, in entrambi necessito del findcontrol.
1)Ho una gridview, quando modifico una riga, faccio partire una funzione. devo prendere il valore selezionato dentro una DropDown su quella riga, la sintassi che uso è:
DropDownList tripletta =((DropDownList)GridView_tripletta.FindControl("DropDownList2"));
Inutile dire che i nomi sono giusti..Però mi da l'errore "Riferimento a un oggetto non impostato su un'istanza di oggetto."
2)Ho una listview, devo accedere a una label al suo interno e leggere il suo valore, uso la seguente sintassi:
string controparte = ((Label)ListView_usi_controparte.FindControl("controparteclearing_controparte")).Text;
e mi da lo stesso errore.
Penso che il problema sia lo stesso, ma non capisco dove sbaglio..
Suggerimenti?
Grazie, ciaoo
non puoi cercare il controllo direttamente nel GridView o ListView, cosa accadrebbe se visualizzassero più di un record e ci fossero ad esempio più di una DropDownList.

quindi devi recuperare la riga che ti ineressa, ad esempio con SelectedRow del GridView e usare FindControl li.

discorso analogo per il ListView

ciao marco

Chi parla senza modestia troverà difficile rendere buone le proprie parole.
Confucio

http://nostromo.spaces.live.com/default.aspx
17 messaggi dal 29 marzo 2008
okk, mi sembra logico, grazie della risposta!
non sono però riuscito del tutto a risolvere la cosa:
1)per la grid, con SelectedRow non funziona, quindi sto provando
DropDownList tripletta = ((DropDownList)GridView_tripletta.Rows[GridView_tripletta.EditIndex].FindControl("DropDownList2"));
ma mi dice sempre Index non compreso nell'intervallo. Richiesto valore non negativo e minore della dimensione dell'insieme.
2)sto cercando di creare una listview che abbia dal caricamento valori editabili, e che quindi sia salvabile tramite un unico pulsante..quindi in realtà il codice è
foreach(ListViewItem lst in ListView_usi_controparte.Items)
{
string controparte = ((Label)ListView_usi_controparte.FindControl("controparteclearing_controparte")).Text;
non va bene?
come posso modificarlo?
grazie mille e ancora ciao
in che senso non funziona con SelectedRow? sicuro di avere una riga selezionata? quando esegui il condice che hai riportato?

ciao marco

Chi parla senza modestia troverà difficile rendere buone le proprie parole.
Confucio

http://nostromo.spaces.live.com/default.aspx

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.