73 messaggi dal 02 agosto 2007
Ciao, ho la necessità di inserire una CheckBoxList che visualizzi i dati presi da una select. Questa però dopo un evento (di un altro controllo della pagina) deve avere, le eventuali selezioni, già caricate.
Ho fatto un casino ma mi spiego meglio:
In una stessa pagina ho:
- una DropDownList che elenca degli utenti.
- una CheckBoxList che elenca le aziende (quindi visualizza dei dati a seguito di una select sul db e per il momento i controlli sono slegati)

qua arriva il bello --->
- a un certo punto quando seleziono un utente (dalla DropDownList) vorrei che comparissero 'chekkate' le aziende legate a quell'utente.

Spero di essere stato chiaro.

Si puo fare tuttp ciò?? e come??
Mi servirebbero delle linee guida....

Grazie a tutta la community!!
Modificato da skater il 10 ottobre 2007 12.07 -
43 messaggi dal 26 marzo 2007
Se non ho capito male devi fare una cosa del genere:
Alla DropDownnList devi assegnare la proprietà: AutoPostBack ="true"
in questo modo quando selezioni un utente viene ricaricata la pagina,e puoi gestire l'evento SelectIndexChanged(Della DDL) in cui dovrai:
-recuperare il codice utente
-eseguire la query per trovare le aziende legate a quell'utente
-assegnare alle varie checkbox il "selected=true"

Spero di esserti stato d'aiuto Ste
Modificato da Lante86 il 10 ottobre 2007 12.11 -
203 messaggi dal 29 giugno 2007
quando gestisci l'evento di selezione dell'utente dalla drop riesci dovresti ottenere la lista delle aziende da checkkare (da qualche parte terrai queste relazioni utente -aziende) e poi fai un ciclo sugli elementi della checkbox list e metti checked = true sugli elementi se il value o text dell'item (dipende da come hai impostato il tutto) è uguale a un nome sulla lista delle aziende.

io farei così (la mia esperienza asp.net non è immensa)...è un po' contorto, ma dovrebbe funzionare...
73 messaggi dal 02 agosto 2007
allora, forse non mi sono spiegato bene.
gli utenti della dropdownlist sono una cosa.
altra cosa sono le voci visualizzate nella checkboxlist. La checkboxlist visualizza, sempre e comunque, TUTTE le aziende (a prescindere che sia stato selzionato o no l'utente). Alla checkboxlist è gia associato un sqldatasource che select nomeazienda from tabella.
E questo è ciò che si presenta al caricamento della pagina.
ok?
ora.
seleziono un utente dalla ddl.
se questo utente è già associato a qualche azienda, vorrei che comparissero i 'check' rispettivi di queste aziende.
spero di essere stato piu chiaro

e grazie cmq per le risposte!!!!
Modificato da skater il 10 ottobre 2007 13.01 -
73 messaggi dal 02 agosto 2007
scusate, ma ho riletto meglio il messaggio di lante, e in effetti ha centrato la questione!

Solo che tu scrivi:

->quando selezioni un utente viene ricaricata la pagina,e puoi gestire l'evento SelectIndexChanged(Della DDL)
--> devo quindi creare l'evento SelectIndexChanged ? dove lo scrivo, tra gli script??? ahiahiahiahi... per me è abbastanza ostile il codice!!!!

-> in cui dovrai:
-recuperare il codice utente
-eseguire la query per trovare le aziende legate a quell'utente
-assegnare alle varie checkbox il "selected=true"

--> queste sono condizioni da inserire nell'evento, giusto??

grazie mille!!
73 messaggi dal 02 agosto 2007
ciao, riprendo questo form, perchè ho ripreso la questione. Credo di aver capito dove dover mettere mani, e ho anche capito che non so da dove poter cominciare, perchè, ahimè!, è 'codice' che bisogna scrivere !!!

Mi rendo conto di aver fatto una domanda un po troppo generica.
Cerco di riassumere i passaggi di ciò che devo fare, in maniera piu dettagliata:

1)Una dropdownlist mi elenca utenti da profile.name e attivo l'AutoPostBack su true.
2)Una query mi dovrebbe restituire il nome utente (però dalla tabella aspnet_User) a partire dal nome selezionato.
3)Un'altra query mi SELECTiona le aziende associate a quel nome utente (di aspnet_User).
4)Imposto "selected=true" alla ChekBoxList alle ripettive aziende trovate dall'ultima query.

Penso che sia questo il modo di procedere, ma il mio problema è scrivere codice.
Posto ciò che ho fatto finora.

<script runat="server">...
protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
{
ProfileCommon p = Profile.GetProfile(DropDownList1.SelectedValue);

lblNome.Text = p.Nome; //recupero nome da profile
lblCognome.Text = p.Cognome; //recupero cognome da profile

// Ora devo recuperare il codice utente

string SelecNome = DropDownList1.SelectedValue; //assegno a una variabile il valore selezionato della DDL

SqlConnection conn = new SqlConnection();
SqlCommand cmd = new SqlCommand("SELECT UserId FROM aspnet_Users WHERE (aspnet_Users.UserName = @SelectNome)", conn);

SqlDataAdapter da = new SqlDataAdapter(cmd);

DataSet ds = new DataSet();
da.Fill(ds); // questa è la prima query per recuperare il nome dalla tabella aspnet_User.

//Ora mi resta eseguire la query per trovare le aziende legate a quell'utente
//E successivamente assegnare alle varie checkbox il "selected=true"

//Ma come procedo ?????? please help me!!

..</script>




...infine una domanda generale: ma che differenza c'è tra il codice (o query) scritte tra "<script runat="server"> </script>" e gli SqlDataSource scritti nel body ????

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.