Ho questo codice per aggiungere elementi selezionati da uno ListBox
a un altro. Come posso impedire all'utente di aggiungere un articolo due volte? Voglio che lo ListBox
si aggiungano a lstBoxToUserProjects
per contenere solo elementi distinti senza voci duplicate.Impedire l'aggiunta di elementi duplicati a un ListBox
protected void btnAddSelectedItem_Click(object sender, EventArgs e)
{
List<ListItem> itemsToAdd= new List<ListItem>();
foreach (ListItem listItem in lstbxFromUserProjects.Items)
{
if (listItem.Selected)
itemsToAdd.Add(listItem);
}
foreach (ListItem listItem in itemsToAdd)
{
lstBoxToUserProjects.Items.Add(listItem);
}
}
EDIT: Ecco quello che ho finito per usare
protected void btnAddSelectedItem_Click(object sender, EventArgs e)
{
List<ListItem> itemsToAdd= new List<ListItem>();
foreach (ListItem listItem in lstbxFromUserProjects.Items)
{
if (listItem.Selected)
itemsToAdd.Add(listItem);
}
foreach (ListItem listItem in itemsToAdd)
{
if (!lstBoxToUserProjects.Items.Contains(listItem))
{
lstBoxToUserProjects.Items.Add(listItem);
}
}
}
Hai pensato di usare il metodo contiene nella lista per vedere se è già presente? –