Datalist nidificato

lunedì 15 ottobre 2012 - 16.06

Nicola Profilo | Senior Member

ciao!
ho un gridview e dentro un datalist.

sono in editing sia il gridview che il datalist dentro di esso.

Tutto ok tranne Editing del datalist. nell'evento OnEditCommand="GV_Crews_Edit"
in cui mi edita correttamente solo il primo item del datalist. se cerco di editare il secondo..
come se non riuscissi a fare il bind del Datalist dopo aver cliccato su Edit per andare in edit mode.. ma mi edita solo il primo.

qualcuno sa aiutarmi?
grazie

Gluck74 Profilo | Guru

così a parole è un po' difficile aiutarti,
dovrei ricreare la tua situazione, ma non mi è molto chiara.

la griglia ed il datalist come ricevono i dati?
Hai gestito manualmente il row_databind?
Hai gestito il row_editing?

mi servono un po' di informazioni e magari il codice aspx dei controlli.

ciao
____________
http://glucolo.wordpress.com
Ricordati di utilizzare il tasto "Accetta" se i nostri consigli ti sono serviti a risolvere il problema.
È il modo per ringraziare chi ti ha aiutato.

Nicola Profilo | Senior Member

Ho evitato l'uso del GeidView con dentro innestato il Datatalist...

Ora ho Un datalist con innestato dentro un'altro datalist.

Datalist 1 = caricamento equipaggi automobili.
Datalist 2 (innestato dento il Datalist 1) = sono i passeggeri dei singoli equipaggi.

Entrambi sono in Editing. Per il datalist 1 nessun problema tutto ok. Pe ril datalist 2 il problema è nell'editcommand, nel senso che non riesco a ricavarmi l'item del datalist 2 da editare.
in quanto se cerco di posizionarmi sul item 2 del datalist 1 per editare il datalist 2 innestato mi edita sempre il datalist2 ma del primo item datalist 1.

Ho rpeso spunto da questo esempio http://www.dotnetspider.com/resources/19391-Edit-Update-Delete-Nasted-DataList.aspx
ma DList2_EditCommand si comporta come detto sopra.

protected void DList2_EditCommand(object source, DataListCommandEventArgs e)
{
int i;
for (i = 0; i < DList1.Items.Count; i++)
{
DataList dl1 = (DataList)DList1.Items[i].FindControl("DList2");
if (Int32.Parse(dl1.Items.Count.ToString()) > 0)
break;
}
DataList dl = (DataList)DList1.Items[i].FindControl("DList2");
dl.EditItemIndex = e.Item.ItemIndex;
loc.get_countryId = Int32.Parse(DList1.DataKeys[i].ToString());
DataSet ds = loc.selectAllStates();
dl.DataSource = ds;
dl.DataBind();
}


grazie per l'aiuto.
Nicola

Nicola Profilo | Senior Member

ciao,

il MIO PROBLEMA.... è trovare l'item (0,1,2,3, ....) del DataList1 che include il DataList2 che sto editando...

nel editcommand del DataList2 come mi faccio restituire Item del datalist1 che lo include..?

grazie
Nicola

Gluck74 Profilo | Guru

dovrei provare a simulare, ora così a mente non ricordo.

Ma piuttosto che tutto l'item del datalist1, non ti basta un ID?
Che ci fai, nel dataitem interno, dell'item esterno?
fammi capire meglio
il codice che hai postato non lo capisco proprio!!!!!!

____________
http://glucolo.wordpress.com
Ricordati di utilizzare il tasto "Accetta" se i nostri consigli ti sono serviti a risolvere il problema.
È il modo per ringraziare chi ti ha aiutato.

Nicola Profilo | Senior Member

Non mi va ancora...

allora io ho un GV con dentro un datalist innestato che si chiama GV_Crews.

protected void GV_Crews_Edit(object source, DataListCommandEventArgs e)

dentro lla edit del datalist vorreu determinare la RowIndex del Gridview che lo contiene?

come faccio??

GRAZIEEEE
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-2017
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5