Поделиться через


Стандартные программы обмена данных диалоговых окон

В этом разделе перечислены стандартные подпрограммы обмена данными диалоговых окон (DDX), используемые для распространенных элементов управления диалоговым окном MFC.

Примечание.

Стандартные подпрограммы обмена данными диалоговых окон определяются в файле afxdd_.hзаголовка. Однако приложения должны включать afxwin.h.

Функции DDX

Имя Описание
DDX_CBIndex Инициализирует или извлекает индекс текущего выбора элемента управления со списком.
DDX_CBString Инициализирует или извлекает текущее содержимое поля редактирования элемента управления со списком.
DDX_CBStringExact Инициализирует или извлекает текущее содержимое поля редактирования элемента управления со списком.
DDX_Check Инициализирует или извлекает текущее состояние элемента управления флажка.
DDX_Control Подклассы заданного элемента управления в диалоговом окне.
DDX_DateTimeCtrl Инициализирует или извлекает данные даты и времени элемента управления выбора даты и времени.
DDX_IPAddress Инициализирует или извлекает текущее значение элемента управления IP-адресом.
DDX_LBIndex Инициализирует или извлекает индекс текущего выбора элемента управления списком.
DDX_LBString Инициализирует или извлекает текущий выбор в элементе управления списком.
DDX_LBStringExact Инициализирует или извлекает текущий выбор в элементе управления списком.
DDX_ManagedControl Создает элемент управления .NET, соответствующий идентификатору ресурса элемента управления.
DDX_MonthCalCtrl Инициализирует или извлекает текущее значение элемента управления календаря месяца.
DDX_Radio Инициализирует или извлекает 0-й индекс радиоконтроля, который в настоящее время проверяется в группе управления радио.
DDX_Scroll Инициализирует или извлекает текущее положение отпечатка элемента управления прокрутки.
DDX_Slider Инициализирует или извлекает текущее положение ползунка элемента управления.
DDX_Text Инициализирует или извлекает текущее значение элемента управления редактирования.

DDX_CBIndex

Функция DDX_CBIndex управляет передачей int данных между элементом управления со списком в диалоговом окне, представлении формы или объекте представления элемента управления и int элементом данных диалогового окна, представления формы или элемента управления.

void AFXAPI DDX_CBIndex(
    CDataExchange* pDX,
    int nIDC,
    int& index);

Параметры

pDX
Указатель на объект CDataExchange. Структура предоставляет этот объект для формирования контекста обмена данными, включая его направление.

nIDC
Идентификатор ресурса элемента управления со списком, связанного со свойством элемента управления.

index
Ссылка на переменную-член диалогового окна, представления формы или объекта представления элемента управления, с которыми обмениваются данные.

Замечания

При DDX_CBIndex вызове index устанавливается индекс текущего выбора поля со списком. Если элемент не выбран, index установите значение 0.

Дополнительные сведения об DDX см обмен данными окон и проверка.

Требования

Заголовок afxdd_.h

DDX_CBString

Функция DDX_CBString управляет передачей CString данных между элементом управления редактированием элемента управления со списком в диалоговом окне, представлении формы или объекте представления элементов управления и CString элементом данных диалогового окна, представления формы или объекта элемента управления.

void AFXAPI DDX_CBString(
    CDataExchange* pDX,
    int nIDC,
    CString& value);

Параметры

pDX
Указатель на объект CDataExchange. Структура предоставляет этот объект для формирования контекста обмена данными, включая его направление.

nIDC
Идентификатор ресурса элемента управления со списком, связанного со свойством элемента управления.

value
Ссылка на переменную-член диалогового окна, представления формы или объекта представления элемента управления, с которыми обмениваются данные.

Замечания

При DDX_CBString вызове value устанавливается текущий выбор поля со списком. Если элемент не выбран, value устанавливается строка нулевой длины.

Примечание.

Если поле со списком является раскрывающимся списком, обмен значениями ограничен 255 символами.

Дополнительные сведения об DDX см обмен данными окон и проверка.

Требования

Заголовок afxdd_.h

DDX_CBStringExact

Функция DDX_CBStringExact управляет передачей CString данных между элементом управления редактированием элемента управления со списком в диалоговом окне, представлении формы или объекте представления элементов управления и CString элементом данных диалогового окна, представления формы или объекта элемента управления.

void AFXAPI DDX_CBStringExact(
    CDataExchange* pDX,
    int nIDC,
    CString& value);

Параметры

pDX
Указатель на объект CDataExchange. Структура предоставляет этот объект для формирования контекста обмена данными, включая его направление.

nIDC
Идентификатор ресурса элемента управления со списком, связанного со свойством элемента управления.

value
Ссылка на переменную-член диалогового окна, представления формы или объекта представления элемента управления, с которыми обмениваются данные.

Замечания

При DDX_CBStringExact вызове value устанавливается текущий выбор поля со списком. Если элемент не выбран, value устанавливается строка нулевой длины.

Примечание.

Если поле со списком является раскрывающимся списком, обмен значениями ограничен 255 символами.

Дополнительные сведения об DDX см обмен данными окон и проверка.

Требования

Заголовок afxdd_.h

DDX_Check

Функция DDX_Check управляет передачей int данных между элементом управления флажок в диалоговом окне, представлении формы или объекте представления элемента управления и int элементом данных диалогового окна, представления формы или элемента управления.

void AFXAPI DDX_Check(
    CDataExchange* pDX,
    int nIDC,
    int& value);

Параметры

pDX
Указатель на объект CDataExchange. Структура предоставляет этот объект для формирования контекста обмена данными, включая его направление.

nIDC
Идентификатор ресурса элемента управления флажка, связанный со свойством элемента управления.

value
Ссылка на переменную-член диалогового окна, представления формы или объекта представления элемента управления, с которыми обмениваются данные.

Замечания

При DDX_Check вызове value устанавливается текущее состояние элемента управления флажка. Список возможных значений состояния см BM_GETCHECK . в пакете SDK для Windows.

Дополнительные сведения об DDX см обмен данными окон и проверка.

Требования

Заголовок afxdd_.h

DDX_Control

Функция DDX_Control подклассирует элемент управления, указанный nIDCв диалоговом окне, представлении формы или объекте представления элемента управления.

void AFXAPI DDX_Control(
    CDataExchange* pDX,
    int nIDC,
    CWnd& rControl);

Параметры

pDX
Указатель на объект CDataExchange.

nIDC
Идентификатор ресурса элемента управления, который будет подклассирован.

rControl
Ссылка на переменную элемента диалогового окна, представления формы или объекта представления элемента управления, связанного с указанным элементом управления.

Замечания

Объект pDX предоставляется платформой при вызове DoDataExchange функции. DDX_Control Поэтому следует вызывать только в пределах переопределенияDoDataExchange.

Дополнительные сведения об DDX см обмен данными окон и проверка.

Требования

Заголовок afxdd_.h

DDX_DateTimeCtrl

Функция DDX_DateTimeCtrl управляет передачей данных даты и времени между элементом управления выбора даты и времени ( CDateTimeCtrl) в диалоговом окне или объекте представления формы, а также CTime COleDateTime элементом данных диалогового окна или объекта представления формы.

void AFXAPI DDX_DateTimeCtrl(
    CDataExchange* pDX,
    int nIDC,
    CTime& value);

void AFXAPI DDX_DateTimeCtrl(
    CDataExchange* pDX,
    int nIDC,
    COleDateTime& value);

void AFXAPI DDX_DateTimeCtrl(
    CDataExchange* pDX,
    int nIDC,
    CString& value);

Параметры

pDX
Указатель на объект CDataExchange. Структура предоставляет этот объект для формирования контекста обмена данными, включая его направление. Удалить этот объект не нужно.

nIDC
Идентификатор ресурса элемента управления выбора даты и времени, связанного с переменной-членом.

value
В первых двух версиях ссылка на CTime переменную или COleDateTime переменную члена, диалоговое окно, представление формы или объект представления элемента управления, с которым обмениваются данные. В третьей версии ссылка на CString объект представления элемента управления данными.

Замечания

При DDX_DateTimeCtrl вызове value задано текущее состояние элемента управления выбора даты и времени или задано valueзначение элемента управления в зависимости от направления обмена.

В третьей версии выше DDX_DateTimeCtrl управляет передачей CString данных между элементом управления временем даты и CString элементом данных объекта представления элемента управления. Строка форматируется с помощью правил текущего языкового стандарта для форматирования дат и времени.

Дополнительные сведения об DDX см обмен данными окон и проверка.

Требования

Заголовок afxdd_.h

DDX_ManagedControl

Создает элемент управления .NET, соответствующий идентификатору ресурса элемента управления.

Синтаксис

template <typename T>
void DDX_ManagedControl(
   CDataExchange* pDX,
   int nIDC,
   CWinFormsControl<T>& control );

Параметры

pDX
Указатель на CDataExchange объект Class . Структура предоставляет этот объект для формирования контекста обмена данными, включая его направление.

nIDC
Идентификатор ресурса элемента управления, связанного со свойством элемента управления.

control
Ссылка на CWinFormsControl объект Class .

Замечания

DDX_ManagedControl вызывает CWinFormsControl::CreateManagedControl создание элемента управления, соответствующего идентификатору элемента управления ресурсами. Используется DDX_ManagedControl для создания элементов управления из идентификаторов ресурсов.CDialog::OnInitDialog Для обмена данными не требуется использовать функции DDX/DDV с элементами управления Windows Forms.

Дополнительные сведения см. в статье "Практическое руководство. Привязка данных DDX/DDV с помощью Windows Forms".

Требования

Заголовок: afxwinforms.h

DDX_IPAddress

Функция DDX_IPAddress управляет передачей данных между элементом управления IP-адресом и элементом данных объекта представления элемента управления.

void AFXAPI DDX_IPAddress(
    CDataExchange* pDX,
    int nIDC,
    DWORD& value);

Параметры

pDX
Указатель на объект CDataExchange. Структура предоставляет этот объект для формирования контекста обмена данными, включая его направление.

nIDC
Идентификатор ресурса элемента управления IP-адреса, связанного со свойством элемента управления.

value
Ссылка на DWORD значение четырех полей элемента управления IP-адреса. Поля заполняются или читаются следующим образом.

Поле Биты, содержащие значение поля
3 От 0 до 7
2 От 8 до 15
1 16–23
0 24–31

Используйте Win32 IPM_GETADDRESS для чтения значения или IPM_SETADDRESS заполнения значения. Эти сообщения описаны в пакете SDK для Windows.

Замечания

При DDX_IPAddress вызове value выполняется чтение из элемента управления IP-адреса или value запись в элемент управления в зависимости от направления обмена.

Дополнительные сведения об DDX см обмен данными окон и проверка.

Требования

Заголовок afxdd_.h

DDX_LBIndex

Функция DDX_LBIndex управляет передачей int данных между элементом управления списком в диалоговом окне, представлении формы или объекте представления элементов управления и int элементом данных диалогового окна, представления формы или элемента управления.

void AFXAPI DDX_LBIndex(
    CDataExchange* pDX,
    int nIDC,
    int& index);

Параметры

pDX
Указатель на объект CDataExchange. Структура предоставляет этот объект для формирования контекста обмена данными, включая его направление.

nIDC
Идентификатор ресурса элемента управления list box, связанного со свойством элемента управления.

index
Ссылка на переменную-член диалогового окна, представления формы или объекта представления элемента управления, с которыми обмениваются данные.

Замечания

При DDX_LBIndex вызове index устанавливается индекс текущего поля списка. Если элемент не выбран, index установите значение -1.

Дополнительные сведения об DDX см обмен данными окон и проверка.

Требования

Заголовок afxdd_.h

DDX_LBString

Функция DDX_LBString управляет передачей CString данных между элементом управления списком в диалоговом окне, представлении формы или объекте представления элемента управления и CString элементом данных диалогового окна, представления формы или элемента управления.

void AFXAPI DDX_LBString(
    CDataExchange* pDX,
    int nIDC,
    CString& value);

Параметры

pDX
Указатель на объект CDataExchange. Структура предоставляет этот объект для формирования контекста обмена данными, включая его направление.

nIDC
Идентификатор ресурса элемента управления list box, связанного со свойством элемента управления.

value
Ссылка на переменную-член диалогового окна, представления формы или объекта представления элемента управления, с которыми обмениваются данные.

Замечания

При DDX_LBString вызове для передачи данных в элемент управления list box первый элемент в элементе управления, начальные совпадения value которого выбраны. (Чтобы сопоставить весь элемент, а не только префикс, используйте DDX_LBStringExact.) Если совпадений нет, элементы не выбраны. Сопоставление не учитывает регистр.

При DDX_LBString вызове для передачи данных из элемента управления value "Список" устанавливается текущий выбор поля списка. Если элемент не выбран, value устанавливается строка нулевой длины.

Примечание.

Если поле списка является раскрывающимся списком, обмен значениями ограничен 255 символами.

Дополнительные сведения об DDX см обмен данными окон и проверка.

Требования

Заголовок afxdd_.h

DDX_LBStringExact

Функция DDX_CBStringExact управляет передачей CString данных между элементом управления "Изменение списка" в диалоговом окне, представлении формы или объекте представления элементов управления и CString элементом данных диалогового окна, представления формы или элемента управления.

void AFXAPI DDX_LBStringExact(
    CDataExchange* pDX,
    int nIDC,
    CString& value);

Параметры

pDX
Указатель на объект CDataExchange. Структура предоставляет этот объект для формирования контекста обмена данными, включая его направление.

nIDC
Идентификатор ресурса элемента управления list box, связанного со свойством элемента управления.

value
Ссылка на переменную-член диалогового окна, представления формы или объекта представления элемента управления, с которыми обмениваются данные.

Замечания

При DDX_LBStringExact вызове для передачи данных в элемент управления "Список" выбран первый элемент в элементе управления, который соответствует value . (Чтобы сопоставить только префикс, а не весь элемент, используйте DDX_LBString.) Если совпадений нет, элементы не выбраны. Сопоставление не учитывает регистр.

При DDX_CBStringExact вызове для передачи данных из элемента управления value "Список" устанавливается текущий выбор поля списка. Если элемент не выбран, value устанавливается строка нулевой длины.

Примечание.

Если поле списка является раскрывающимся списком, обмен значениями ограничен 255 символами.

Дополнительные сведения об DDX см обмен данными окон и проверка.

Требования

Заголовок afxdd_.h

DDX_MonthCalCtrl

Функция DDX_MonthCalCtrl управляет передачей данных даты между элементом управления календарем месяца ( CMonthCalCtrl) в диалоговом окне, представлении формы или объекте элемента управления, а также CTime COleDateTime элементом или элементом данных диалогового окна, представления формы или элемента управления.

void AFXAPI DDX_MonthCalCtrl(
    CDataExchange* pDX,
    int nIDC,
    CTime& value);

void AFXAPI DDX_MonthCalCtrl(
    CDataExchange* pDX,
    int nIDC,
    COleDateTime& value);

Параметры

pDX
Указатель на объект CDataExchange. Структура предоставляет этот объект для формирования контекста обмена данными, включая его направление. Удалить этот объект не нужно.

nIDC
Идентификатор ресурса элемента управления календаря месяца, связанного с переменной члена.

value
Ссылка на CTime COleDateTime переменную элемента диалогового окна, представления формы или объекта элемента управления, с которым обмениваются данные.

Замечания

Примечание.

Элемент управления управляет только значением даты. Поля времени в объекте времени задаются для отражения времени создания окна управления или любого времени, заданного в элементе управления с вызовом CMonthCalCtrl::SetCurSel.

При DDX_MonthCalCtrl вызове value устанавливается текущее состояние элемента управления календаря месяца.

Дополнительные сведения об DDX см обмен данными окон и проверка.

Требования

Заголовок afxdd_.h

DDX_Radio

Функция DDX_Radio управляет передачей int данных между группой управления радио в диалоговом окне, представлении формы или объекте представления элемента управления и int элементом данных диалогового окна, представления формы или элемента управления. Значение int элемента данных определяется в соответствии с выбранным переключателем в группе.

void AFXAPI DDX_Radio(
    CDataExchange* pDX,
    int nIDC,
    int& value);

Параметры

pDX
Указатель на объект CDataExchange. Структура предоставляет этот объект для формирования контекста обмена данными, включая его направление.

nIDC
Идентификатор ресурса первого элемента управления радио в группе.

value
Ссылка на переменную-член диалогового окна, представления формы или объекта представления элемента управления, с которыми обмениваются данные.

Замечания

При DDX_Radio вызове value устанавливается текущее состояние группы управления радио. Значение задается как 0-й индекс проверяемого в данный момент радиоконтроля или -1, если радиоконтроль не проверяется.

Например, если первая переключатель в группе установлен (кнопка с WS_GROUP стилем), значение int элемента равно 0 и т. д.

Дополнительные сведения об DDX см обмен данными окон и проверка.

Требования

Заголовок afxdd_.h

DDX_Scroll

Функция DDX_Scroll управляет передачей int данных между элементом управления прокрутки в диалоговом окне, представлении формы или объекте управления и int элементом данных диалогового окна, представления формы или элемента управления.

void AFXAPI DDX_Scroll(
    CDataExchange* pDX,
    int nIDC,
    int& value);

Параметры

pDX
Указатель на объект CDataExchange. Структура предоставляет этот объект для формирования контекста обмена данными, включая его направление.

nIDC
Идентификатор ресурса элемента управления прокрутки, связанного со свойством элемента управления.

value
Ссылка на переменную-член диалогового окна, представления формы или объекта представления элемента управления, с которой осуществляется обмен данными.

Замечания

При DDX_Scroll вызове value устанавливается текущее положение отпечатка элемента управления. Дополнительные сведения о значениях, связанных с текущей позицией пальца элемента управления, см GetScrollPos . в пакете SDK для Windows.

Дополнительные сведения об DDX см обмен данными окон и проверка.

Требования

Заголовок afxdd_.h

DDX_Slider

Функция DDX_Slider управляет передачей int данных между ползунком в диалоговом окне или представлении формы и int элементом данных диалогового окна или объекта представления формы.

void AFXAPI DDX_Slider(
    CDataExchange* pDX,
    int nIDC,
    int& value);

Параметры

pDX
Указатель на объект CDataExchange. Структура предоставляет этот объект для формирования контекста обмена данными, включая его направление.

nIDC
Идентификатор ресурса элемента управления ползунка.

value
Ссылка на значение для обмена. Этот параметр содержит или задает текущее положение элемента управления ползунка.

Замечания

При DDX_Slider вызове value устанавливается текущее положение пальца элемента управления или значение получает позицию в зависимости от направления обмена.

Дополнительные сведения об DDX см обмен данными окон и проверка. Сведения об элементах управления ползунка см. в разделе "Использование CSliderCtrl".

Требования

Заголовок afxdd_.h

DDX_Text

Функция DDX_Text управляет передачей intданных , UINT, , CStringDWORDfloatlongили double данных между элементом управления редактированием в диалоговом окне, представлении формы или представлении элементов управления и CString элементом данных диалогового окна, представления формы или элемента управления.

void AFXAPI DDX_Text(
    CDataExchange* pDX,
    int nIDC,
    BYTE& value);

void AFXAPI DDX_Text(
    CDataExchange* pDX,
    int nIDC,
    short& value);

void AFXAPI DDX_Text(
    CDataExchange* pDX,
    int nIDC,
    int& value);

void AFXAPI DDX_Text(
    CDataExchange* pDX,
    int nIDC,
    UINT& value);

void AFXAPI DDX_Text(
    CDataExchange* pDX,
    int nIDC,
    long& value);

void AFXAPI DDX_Text(
    CDataExchange* pDX,
    int nIDC,
    DWORD& value);

void AFXAPI DDX_Text(
    CDataExchange* pDX,
    int nIDC,
    CString& value);

void AFXAPI DDX_Text(
    CDataExchange* pDX,
    int nIDC,
    float& value);

void AFXAPI DDX_Text(
    CDataExchange* pDX,
    int nIDC,
    double& value);

void AFXAPI DDX_Text(
    CDataExchange* pDX,
    int nIDC,
    COleCurrency& value);

void AFXAPI DDX_Text(
    CDataExchange* pDX,
    int nIDC,
    COleDateTime& value);

Параметры

pDX
Указатель на объект CDataExchange. Структура предоставляет этот объект для формирования контекста обмена данными, включая его направление.

nIDC
Идентификатор элемента управления редактирования в диалоговом окне, представлении формы или объекте представления элемента управления.

value
Ссылка на элемент данных в диалоговом окне, представлении формы или объекте элемента управления. Тип value данных зависит от того, какие из перегруженных версий DDX_Text используются.

Замечания

Дополнительные сведения об DDX см обмен данными окон и проверка.

Требования

Заголовок afxdd_.h

См. также

Стандартные программы проверки данных диалоговых окон
Макросы и глобальные
CWinFormsControl::CreateManagedControl
CDialog::OnInitDialog