Quiero agregar una opción "Seleccionar uno" a una lista desplegable vinculada a un List<T>.
Una vez que pregunto por List<T>, ¿cómo agrego mi inicial Item, no parte de la fuente de datos, como el PRIMER elemento en eso List<T>? Yo tengo:
// populate ti from data
List<MyTypeItem> ti = MyTypeItem.GetTypeItems();
//create initial entry
MyTypeItem initialItem = new MyTypeItem();
initialItem.TypeItem = "Select One";
initialItem.TypeItemID = 0;
ti.Add(initialItem) <!-- want this at the TOP!
// then
DropDownList1.DataSource = ti;
c#
drop-down-menu
generic-list
Máquina de la ceniza
fuente
fuente

This method is an O(n) operation, where n is Count.Addmétodo, se inserta al final.Append()yPrepend(). Verifique esta respuestaActualización: una mejor idea, establezca la propiedad "AppendDataBoundItems" en verdadero, luego declare el "Elegir elemento" declarativamente. La operación de enlace de datos se agregará al elemento declarado estáticamente.
http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.listcontrol.appenddatabounditems.aspx
-Oisina
fuente
Desde .NET 4.7.1, puede usar el efecto secundario libre
Prepend()yAppend(). La salida será un IEnumerable.fuente
Utilizar
List<T>.InsertSi bien no es relevante para su ejemplo específico, si el rendimiento es importante, también considere usarlo
LinkedList<T>porque insertar un elemento al comienzo de unList<T>requiere que se muevan todos los elementos. Consulte Cuándo debo usar una lista frente a una lista enlazada .fuente
Utilice el método de inserción de
List<T>:fuente