2009-09-07 11 views

Respuesta

2

Debe usar una cadena vacía u otro patrón de texto único en lugar de nulo.

Y a continuación, puede manejar el evento Formato del cuadro combinado para interceptar el <empty> y mostrar un texto alternativo.

private void comboBox1_Format(object sender, ListControlConvertEventArgs e) 
{ 
    e.Value = FormatForCombobox(e.ListItem); 
} 


private string FormatForCombobox(object value) 
{ 
    string v = (string) value; 
    if (v == string.Empty) 
    v = "<no Selection>"; 
    return v; 
} 
+0

no puedo añadir nada a la lista desplegable, ya que se une a la lista de entidades. – wRAR

+0

Aún puede agregar un evento cuando esté vinculado. –

+0

No servirá de nada porque no tengo nada especial que formatear. – wRAR

7

Si eres unión a IEnumerable lista de entidades que sin duda puede agregar su objeto vacío manualmente.

Por ejemplo

var qry = from c in Entities 
      select c; 
var lst = qry.ToList(); 

var entity = new Entity(); 
entity.EntityId= -1; 
entity.EntityDesc = "(All)"; 
lst.Insert(0, entity); 

MyComboBox.DataSource = lst; 
MyComboBox.DisplayMember = "EntityDesc" 
MyComboBox.ValueMember = "EntityId" 
Cuestiones relacionadas