Hi,
the code VS is generates is:
//
// contactNameComboBox
//
this.contactNameComboBox.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.customersBindingSource, "ContactName", true));
The main difference between your first and your second approach is that the first one fills the combobox with one item and your second way will fill the combobox with all rows in your table TipContact. This is normally used for lookup tables if you want to give your customer a more meaningful information than just the primary key. In this case you define the ValueMember to your Primary Key (in Lookup Table) = Foreign Key (in the Table you display) and set the DisplayMember to string field which gives the user more information (like CustomerName).
Since all the rows are loaded into the combobox it takes longer that your first way.
So if you bind to property "Text" instead of "ValueMember" the first way should work. If you want to use the second way (for a lookup operation) you have to bind to "SelectedValue" instead of "ValueMember".
regards
Philipp