Se trata este de un truco sencillo, pero aún así interesante ya que mucha gente tarda en darse cuenta de cómo solucionarlo.

El problema surge cuando usas un control DataSource del tipo que sea (ObjectDataSource, SqlDataSource, LinqDataSource, etc...) y lo enlazas con un DropDownList para mostrar una lista de valores para elegir, por ejemplo, la categoría de productos a mostrar en otro control GridView. El origen de datos te devuelve sólo los diferentes valores de categorías disponibles en la base de datos, pero lo habitual es que además de una categoría (o lo que sea) concreta, desees dar una opción o dos por defecto, por ejemplo "Ver todas" y "Ninguna". Pero claro el control de origen de datos no tiene esas categorías inexistentes contempladas, así que ¿cómo haces?

Pues muy fácil, pero hay que saber un truquillo: la propiedad AppendDataBoundItems del control DropDownList.

Si la estableces a True lo que consigues es que cualquier elemento que coloques en lalista en tiempo de diseño se conserve (en los primeros lugares además) aunque le añadas dinámicamente otros en tiempo de ejecución con el control de origen de datos. Así, basta con que añadas un par de elementos como los del ejemplo, según tus necesidades, para tener disponibles más opciones adicionales en la lista desplegable.

Sencillo pero útil :-)

Escrito por un humano, no por una IA