У меня похожий вопрос, но я не нашёл ответа нигде. В общем (если моё сообщение попало по адресу, в интерфейсе я запутался) доделываю я программу на C++, где всё написано практически на системном уровне, диалоговое окно сделано в виде ресурса. Обмен происходит DDX-функциями в DoDataExchange. Там есть поля ввода и флажки (checkbox), нужно добавить раскрывающийся список (combobox). И для него я не могу подобрать DDX-функцию. Во-первых поле Data в конструкторе ничего не таёт, хоть по кнопке TestDialog я в списке элементы вижу, при выполнении их нет. Я пробовал
DDX_CBString(pDX, IDC_COMBO1, cmbx);
DDX_CBIndex(pDX, IDC_COMBO1, m_ColorFormat);
тогда он cmbx вписывает только в само поле, а раскрывающийся список заполнить никак не удаётся, ни с точками с запятыми, ни с разрывами строки. Вторая функция считывает непонятно что. Есть ещё DDX_FieldCBString, но тут нужен CRecordset, что заполнить просто набором строк я тоже не нашёл как.
В общем, сейчас применяю обходной вариант
CListBox* pList = (CListBox*)GetDlgItem(IDC_LIST2);
pList->AddString("15 бит");
и т. п., к тому же именно listbox, ибо для combobox и это не работает. Но хотелось б сделать интерфейс с combobox и делать нормально через DDX, а не такими обходными путями.