Je vais avoir une listezone de liste déroulante et liste générique
List<string> strArraylist = new List<string>();
je veux y ajouter les valeurs d'une zone de liste déroulante ..
Je vais avoir une listezone de liste déroulante et liste générique
List<string> strArraylist = new List<string>();
je veux y ajouter les valeurs d'une zone de liste déroulante ..
MISE À JOUR: Je me rends compte que vous pouvez ont demandé au opposé de ce que je fournis ci-dessous: comment ajouter les articles de un ComboBox
- un List<string>
. Si tel est le cas, vous pouvez toujours le faire comme ceci:
List<string> strList = new List<string>();
strList.AddRange(cbx.Items.Cast<object>().Select(x => x.ToString()));
est ici une méthode d'extension que j'utilise:
public static class ControlHelper
{
public static void Populate<T>(this ComboBox comboBox, IEnumerable<T> items)
{
try
{
comboBox.BeginUpdate();
foreach (T item in items)
{
comboBox.Items.Add(item);
}
}
finally
{
comboBox.EndUpdate();
}
}
}
Cela vous permet de remplir une ComboBox
avec une collection générique qui peut être énuméré. Voyez comment il est facile d'appeler:
List<string> strList = new List<string> { "abc", "def", "ghi" };
cbx.Populate(strList);
Notez que vous pouvez également faire cette méthode non-générique, puisque la propriété ComboBox.Items
est d'un type non générique (vous pouvez ajouter une object
-Items
). Dans ce cas, la méthode Populate
accepterait un IEnumerable
au lieu d'un IEnumerable<T>
.