118 messaggi dal 13 aprile 2007
la situazione è un pò complessa ma spero di spiegarmi al meglio...
Quando sono in editi in un gridview carico una listbox con i valori di tutti i reparti presenti nella tabella reparti.
Però poichè una categoria può appartenere a più repari vorrei che in edit il listbox mi evidenziasse tutti i reparti di appartenenza.
Se una categoria appartine ad un solo reparto, quest'ultimo in edit viene evidenziato correttamente, mentre se appartiene a più reparti contemporaneamente
mi viene evidenziato solo l'ultimo che viene letto dal datareader.,
Questo è il codice:

string sql = "Select * from reparti";

string sql1 = "SELECT Reparti.nomeReparto,Categorie.idCategoria, RepartiCategorie.idCategoria AS Expr1, RepartiCategorie.idReparto FROM Categorie INNER JOIN " +
"RepartiCategorie ON Categorie.idCategoria = RepartiCategorie.idCategoria INNER JOIN " +
"Reparti ON RepartiCategorie.idReparto = Reparti.idReparto " +
"WHERE Categorie.idCategoria = " + Convert.ToInt32(id);
SqlCommand command = new SqlCommand(sql, sqlConnection);
SqlDataReader datareader = command.ExecuteReader();
while (datareader.Read())
{
reparti.Items.Add(new ListItem(datareader["nomereparto"].ToString() ));



}

datareader.Close();
command.CommandText = sql1;
SqlDataReader reader1 = command.ExecuteReader();
while (reader1.Read())
reparti.SelectedIndex = reparti.Items.IndexOf(reparti.Items.FindByValue(reader1["nomereparto"].ToString()));
reader1.Close();

spero che qualcuno posssa aiutarmi.
ciao
hai impostato ListSelectionMode a Multiple?

ciao marco

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

http://nostromo.spaces.live.com/default.aspx
accedi allora direttamente alla proprietà Selected che ogni ListiItem espone.

ciao marco

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

http://nostromo.spaces.live.com/default.aspx
118 messaggi dal 13 aprile 2007
cioè?
potresti farmi un esempio?

ciao
qualcosa di simile:

foreach (ListItem item in ListBox1.Items)
{
item.Selected = item.Value == "criterio";
}

ciao marco

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

http://nostromo.spaces.live.com/default.aspx
118 messaggi dal 13 aprile 2007
scusa se sono gnucco ma al posto di criterio cosa ci metto?
ciao
118 messaggi dal 13 aprile 2007
intendi dire così:
SqlDataReader reader1 = command.ExecuteReader();
while (reader1.Read())
{
foreach (ListItem item in reparti.Items)
{
item.Selected = item.Value == reader1["nomereparto"].ToString();
}

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.