Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

ComboBox Items Empty but DataSource Full

After binding a list to combobox, its dataSource.Count is 5 but, combobox item count is 0. how can it be?

I'm used to Web programming and this is in Windows Forms. So no combo.DataBind(); method exists.

The problem here is, I'm trying to set the selected item programmatically. Since I don't see the combo.Items collection filled, I cannot set the desired item.


Update

A total update is needed I guess:

  • datasource contains 7 items
  • when bound to combobox, DisplayMember and ValueMember are appropriately implemented
  • after databound, through the gui, I can clearly see the 7 items in the combobox
  • combobox.DataSource.Count = 7 and combobox.Items.Count = 0

So the problem is here; since after databound no items are there in the ItemCollection of combobox; I cannot search for one to match and set the appropriate one.

Here is a image for better understanding (But I'm pretty sure I'm missing sth simple)

screenshot

like image 411
Beytan Kurt Avatar asked Aug 06 '12 14:08

Beytan Kurt


Video Answer


2 Answers

After adding ddl.BindingContext = new BindingContext(); before the BindingSource assignment, everything worked fine.

like image 173
Beytan Kurt Avatar answered Sep 20 '22 01:09

Beytan Kurt


If you'd expand DataSource items in debuger, you'd probably notice that 1st element on list is null. That is why DataSource does not render ComboBox Items. Removing null items from the list should do all the work;

like image 25
Paweł Avatar answered Sep 20 '22 01:09

Paweł