It feels to me that you need a little into to C1TrueDBGrid/C1TrueDBDropdown.
Reviewing existing C1TDBGrid examples (i.e. Tutorial08) would be my first suggestion.
To answer your particular question
1. Try to erase everything you have done so far using SetDataBinding(). This is not needed for what you are trying to accomplish.
2. Create BindingSources (i.e. drop your both tables from your DataSource into your grid and dropdown respectively). I understand you have tested that part.
3. Configure Dropdown control:
a. Verify DataSource (should say something like: categoriesBindingSource)
b. Set DisplayMember to “CategoryName”
c. Set ValueMember to “CatID”
d. Set ValueTranslate=True
4. Configure DBGrid control:
a. Set Dropdown property to an instance of your dropdown
At this stage you are only building and testing your logic and ignoring presentation.
5. Build and run it. If this works as expected go to the next step (Presentation)
6. Use Design from the context menu to edit Grid presentation:
a. Use Caption property on Column Tab to control displayed column heading
b. Use Visible on “Display Column” Tab to Show/Hide column (or use Splits/DisplayColumns from Properties)
7. Configure Dropdown presentation:
a. Use Columns Property to change Caption
b. Use DisplayColumns to set visibility of any dropdown column.
i. Note (bizarre but true) :
YOU MUST SET WITH=0 AND VISIBLE=False TO MAKE COLUMN HIDDEN
I have just realized that that last note I wrote was most likely the source of your headache.
Good luck,Bogdan