Can I use CWnd::DlgDirListComboBox() to fill a combobox in the grid?

pWnd->DlgDirListComboBox("c:\\", GX_IDS_CTRL_CBS_DROPDOWNLIST,0, DDL_READWRITE);

fills up the combobox directly but with CGXComboBox, the combobox will be filled up with the choicelist whenever you move to another cell (because different combobox cells in the grid share the same CComboBox window).

What you could do is loop through the added items after you call DlgDirListComboBox and fill up a choice list string which you can then pass too SetStyleRange.

Another idea would be that you register your own combobox control where you can then specify that the item list should not be reinitialized again when you move to another cell. This can be done with

   {
       CGXComboBoxWnd* pWnd = new CGXComboBoxWnd(this,
 GX_IDS_CTRL_CBS_DROPDOWNLIST);
       pWnd->Create(WS_VSCROLL | CBS_DROPDOWNLIST | CBS_SORT, 0);
       pWnd->m_bFillWithChoiceList = FALSE;
           pWnd->DlgDirListComboBox("c:\\", GX_IDS_CTRL_CBS_DROPDOWNLIST,0, 
              DDL_READWRITE);
       RegisterControl(GX_IDS_CTRL_CBS_DROPDOWNLIST, pWnd);
   }