cs_gmanouvrier
Messages postés5Date d'inscriptionmardi 21 novembre 2000StatutMembreDernière intervention30 avril 2008
-
30 avril 2008 à 14:05
nhervagault
Messages postés6063Date d'inscriptiondimanche 13 avril 2003StatutModérateurDernière intervention15 juillet 2011
-
2 mai 2008 à 10:27
Bonjour,
Je cherche à Parser le contenu d'un repeater.
J'ai une source de données qui pointe sur une methode me retournant un tableau d'objets. Je link, pas de problème.
Je crée un bouton avec un commandName.
Sur l'evennement, en code behind, je vois bien que mon repeater.items.count=21, mais les dataItems sont 'null'.
J'aimerais faire une sorte de foreach() afin d'évaluer et traiter toutes les lignes de mon repeater.
Est-ce possible? ou dois-je passer par une mise en viewState du tableau d'objet(ce qui serait très lourd).
cs_gmanouvrier
Messages postés5Date d'inscriptionmardi 21 novembre 2000StatutMembreDernière intervention30 avril 2008 2 mai 2008 à 09:55
Bonjour,
En effet, le findControl me retrouve bien les infos control par control. Mais visiblement, si mon repeater est chargé avec ,par exemple, un tableau d'objets donné(ici TrackInfo[]), je ne peux pas récupérer les objets mais bien des valeurs text ou autre, control par control :
protected
void repetTitres_ItemCommand(
object source,
RepeaterCommandEventArgs e){
//ObjectDataSourceTitres
TrackInfo[] ti =
new
TrackInfo[repetTitres.Items.Count];
int cpt = 0;
foreach (
RepeaterItem titre
in repetTitres.Items){
string leNom = ((
TextBox)titre.FindControl(
"txtTitre")).Text;//ça c'est OKti[cpt] = (
TrackInfo)titre.DataItem;//c'est ça qui ne marche pas :(}
extraction.
titresCDA.Import(cmbDrive.SelectedValue, ti);}
nhervagault
Messages postés6063Date d'inscriptiondimanche 13 avril 2003StatutModérateurDernière intervention15 juillet 201137 2 mai 2008 à 10:27
Salut,
ti[cpt] = (
TrackInfo)titre.DataItem
Avec ca doit passera peut etre le cast me semble mal placé, analyse avec le deboger en mettant les parenthese au bon endroit
C'est le dataitem qui est de type TrackInfo et pas titre il me semble cart titre est de type RepeaterItem