SAMPLE: Filling List Box Using MFC's DDX FacilityID: Q141498
|
The Lstddx32 sample illustrates a technique for filling both an ordinary
list box control and the list box portion of a combo box control with
data, and using the Microsoft Foundation Class (MFC) Dialog Data Exchange
(DDX) facility to return the selection.
The following file is available for download from the Microsoft Software
Library:
~ Lstddx32.exeFor more information about downloading files from the Microsoft Software Library, please see the following article in the Microsoft Knowledge Base:
Q119591 How to Obtain Microsoft Support Files from Online Services
A common misconception with regard to DDX is that assigning a value to a
DDX variable will cause that data to be loaded into a control. This does
in fact happen for edit controls, but not for list box controls. In order
to add items to a list box the dialog class must use the
CListBox::AddString() or CComboBox::AddString() functions. Doing this
involves several steps which are illustrated by this sample.
The sample itself was initially created as an MDI application using
AppWizard from Visual C++ version 1.0. AppStudio was then used to create a
dialog which contains OK and Cancel button plus an edit control
(IDC_EDIT1), a combo control (IDC_COMBO1), and a list box control
(IDC_LIST1). The Class Wizard was used to create a class CDialog1 based on
CDialog. The files dialog1.h and dialog1.cpp contain the code for this
class. Class Wizard was also used to add DDX member variables m_edit1,
m_combo1, and m_list1 to dialog1.h. A menu item was added to the view menu
(IDR_LIST_DTYPE) using AppStudio, and a message handler added which will
call the dialog when the menu item was selected.
The Readme.txt file included with the sample explains in more detail how
the list boxes are initialized and how data is passed between the calling
routine and the dialog procedure.
Additional query words: lstddx listbox
Keywords : kbcode kbsample kbMFC KbUIDesign kbVC
Version : 4.0
Platform : NT WINDOWS
Issue type :
Last Reviewed: July 29, 1999