Hi avalor,
Might be that I'm not understanding you correctly, but from the image it seems to me that you will have a list of records in the DataGridView that will contain a city ID. Then you have the combobox that should change as you select different records in the datagridview, but you don't want the city ID do show in the combobox, you want the city name, right ?
I think you might find some valuable information in this code sample here. Check the usercontrol, UC.vb and check the code for AssignDataset() in that file. There you have a datagridview, and then a combobox and two textboxes outside of the datagridview, that bind to the data in the selected record in the DataGridView.
Remember that in .NET you have actually two "things" that relate to data-something. First you have the DataSource of some controls like the DataGridView that is the list of records that will show in the control. Comboxes have similar DataSource (plus DisplayMember and ValueMember) that will be presented as a list of available options.
Second you have databindings. This means in your case you will create a databinding for your combobox that you will databind to the bindingsource of your datagrid and the effect will be that every time you select a different record in the DataGridview, the value will automatically change in the combobox.
Check the code sample and see if you get the general idea.
Feel free to ask more if I misunderstood, or if you need more info.
Palli