Si te ha tocado desarrollar una pagina web en aspnet en donde se requiere un dropdownlist que no muestre ningun valor inicial y no te quieres complicar la vida buscando soluciones de terceros o incluso usar el ajaxcontroltoolkit aqui te dejo una solución facil al problema:

1. Problema: Quieres que el DropDownList aparezca asi:




Pero siempre te sale asi:





3. Solucion: Cuando el metodo DataBound del DropDownList se ejecute debes de agregar un nuevo item al inicio del DropDownList ya sea que le dejes el texto vacio o que les escribas alguna indicacion, por ejemplo "Seleccione un usuario", el bloque de codigo a continuacion muestra como:

Texto en blanco

protected void DropDownList1_DataBound(object sender, EventArgs e)
{
DropDownList1.Items.Insert(0, new ListItem("","0"));
}

Con Texto

protected void DropDownList1_DataBound(object sender, EventArgs e)
{
DropDownList1.Items.Insert(0, new ListItem("Seleccione un usuario","0"));
}