FormView e binding CheckBoxList

lunedì 04 gennaio 2010 - 17.11

cldparisi Profilo | Newbie

Ho un mio ObjectDataSource che restituisce un mio oggetto con svariate proprietà tutte sono in binding con textbox o combo che siano in modo che al momento del salvataggio mi trovo il mio oggetto ben valorizzato senza dover fare lavoro di "collegamento" tra i controlli grafici e il mio oggetto.
Ora vorrei creare una proprietà del mio oggetto e legarla ad una CheckBoxList (in realtà uso oggetti di una libreria ma il concetto è lo stesso) in modo da avere in questa proprietà prima del salvataggio gli elementi selezionati e che il tutto funzionasse anche al contrario e cioè in fase di caricamento avere in questa proprietà quelli selezionati e che la CheckBoxList in caricamento me li preselezioni.

Faccio un esempio pratico e più semplificato del mio caso reale per spiegarmi meglio.
TbPersona: anagrafica
LsLingua: elenco delle lingue
TbPersonaLingue: le lingue parlate da ogni persona (id, idPersona, idLingua)

Nel FormView di inserimento della Persona inserisco una CheckBoxList popolata da LsLingua con tutte le lingue esistenti, l'utente checka le lingue parlate e salva.

Ora nel mio oggetto Persona vorrei mettere una proprietà e metterla in binding con "qualcosa" della CheckBoxList questa proprietà può essere qualunque cosa, List<int> (il value dell'oggetto della ChackBoxList), List<string>, List<LsLingua> (questo che sarebbe l'oggetto con cui è caricata la CheckBoxList sarebbe il massimo ma credo che sia impossibile) al limite anche se vorrei evitarlo perché si perderebbe la separazione e sarebbe tutto da rifare se cambiassi oggetto grafico anche List<CheckItem>.
Vorrei che questo binding funzionasse nei due sensi, la proprietà all'inizio fa selezionare alcuni check e in fase di salvataggio è la CheckBoxList a valorizzare la proprietà

So benissimo che è tutto fattibile recuperando i Checked Items appena prima del salvataggio e appena prima del Load checkarli ma se fosse possibile agire come in caso di texbox e combo preferirei

Grazie


===============================================================================================
Se altri avessero lo stesso dubbio mi hanno risposto su un altro forum: non è possibile fare un binding del genere
===============================================================================================



--
Claudio P.
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