¿Por qué el menú desplegable no muestra mi elemento en blanco primero? Esto es lo que tengo
drpList.Items.Add(New ListItem("", ""))
With drpList
.DataSource = myController.GetList(userid)
.DataTextField = "Name"
.DataValueField = "ID"
.DataBind()
End With
Editar ~ Me estoy vinculando a una Lista Generig, ¿podría ser este el culpable?
asp.net
drop-down-menu
Saif Khan
fuente
fuente
Respuestas:
Después de su enlace de datos:
fuente
Puede usar
AppendDataBoundItems=true
para agregar fácilmente:fuente
El enlace de datos se lleva a cabo después de que haya agregado su elemento de lista en blanco, y reemplaza lo que ya está allí, debe agregar el elemento en blanco al comienzo de la Lista desde su controlador, o agregarlo después del enlace de datos.
EDITAR:
Después de buscar en Google rápidamente a partir de ASP.Net 2.0, hay una propiedad verdadera "AppendDataBoundItems" que puede configurar para ... agregar los elementos enlazados a datos.
para detalles ver
http://imar.spaanjaars.com/QuickDocId.aspx?quickdoc=281 o
http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.listcontrol.appenddatabounditems.aspx
fuente
Creo que una mejor manera es insertar primero el elemento en blanco, luego vincular los datos tal como lo ha estado haciendo. Sin embargo, debe establecer la
AppendDataBoundItems
propiedad del control de lista.Utilizamos el siguiente método para vincular cualquier fuente de datos a cualquier control de lista ...
fuente
Al igual que "Whisk" dijo, el truco está en la propiedad "AppendDataBoundItems"
Gracias "batir"
fuente
Haga su enlace de datos y luego agregue lo siguiente:
fuente
parece que está agregando un elemento en blanco y luego un enlace de datos, lo que vaciaría la lista; intente insertar el elemento en blanco después del enlace de datos
fuente
sencillo
Al final
fuente
ddlCategory.DataSource = ds;
ddlCategory.DataTextField = "CatName";
ddlCategory.DataValueField = "CatID";
Cách 1:
ddlCategory.Items.Add(new ListItem("--please select--", "-1"));
ddlCategory.AppendDataBoundItems = true;
ddlCategory.SelectedIndex = -1;
ddlCategory.DataBind();
Cách 2:
ddlCategory.Items.Insert(0, new ListItem("-- please select --", "0"));
(Probado bien)
fuente
También podría tener una unión de la selección en blanco con la selección que tiene contenido:
fuente