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


DTBLCOMBOBOX

Область применения: Outlook 2013 | Outlook 2016

Описывает элемент управления со списком, который будет использоваться в диалоговом окне, созданном на основе таблицы отображения.

Свойство Значение
Файл заголовка: Mapidefs.h
Связанный макрос: SizedDtblComboBox
typedef struct _DTBLCOMBOBOX
{
  ULONG ulbLpszCharsAllowed;
  ULONG ulFlags;
  ULONG ulNumCharsAllowed;
  ULONG ulPRPropertyName;
  ULONG ulPRTableName;
} DTBLCOMBOBOX, FAR *LPDTBLCOMBOBOX;

Members

ulbLpszCharsAllowed

Смещение от начала структуры DTBLCOMBOBOX к фильтру строк символов, который описывает ограничения, если таковые есть, на символы, которые можно ввести в элемент управления редактирования поля со списком. Фильтр не интерпретируется как регулярное выражение, и тот же фильтр применяется к каждому введенному символу. Фильтр имеет следующий формат:

Символ Описание
* Допускается любой символ (например, "*").
[ ] Определяет набор символов (например, "[0123456789]").
- Указывает диапазон символов (например, "[a-z]").
~ Указывает, что эти символы запрещены. (например, "[~0-9]").
\ Используется для процитировки любого из предыдущих символов (например, означает, "[\-\\\[\]]" -, , символы [, и ] разрешены).

ulFlags

Битовая маска флагов, используемая для обозначения формата фильтра строк символов. Можно задать следующий флаг:

MAPI_UNICODE

Фильтр имеет формат Юникода. Если флаг MAPI_UNICODE не задан, фильтр имеет формат ANSI.

ulNumCharsAllowed

Максимальное количество символов, которые можно ввести в текстовом поле поля со списком.

ulPRPropertyName

Тег свойства для свойства типа PT_TSTRING.

ulPRTableName

Тег свойства для свойства типа PT_OBJECT, в котором интерфейс IMAPITable можно открыть с помощью вызова OpenProperty . Таблица должна содержать один столбец со свойством того же типа, что и свойство, идентифицируемое элементом ulPRPropertyName . Строки таблицы используются для заполнения списка.

Замечания

Структура DTBLCOMBOBOX описывает поле со списком— элемент управления, состоящий из списка и поля выбора. В списке представлены сведения, из которых пользователь может выбрать, а в поле выбора отображается текущий выбор. Поле выбора — это элемент управления редактирования, который также можно использовать для ввода текста, еще не включенного в список.

Два элемента тега свойства работают вместе, чтобы координировать отображение списка с элементом управления edit. Когда MAPI впервые отображает поле со списком, он вызывает метод OpenProperty реализации IMAPIProp, связанной с таблицей отображения, чтобы получить таблицу, представленную элементом ulPRTableName . Эта таблица содержит один столбец столбца, который содержит значения для свойства, представленного членом ulPRPropertyName . Таким образом, этот столбец должен иметь тот же тип, что и свойство ulPRPropertyName , а оба столбца должны быть символьными строками.

Значения столбца отображаются в разделе списка поля со списком. Таким образом, PR_NULL (PidTagNull) не является допустимым тегом свойства для ulPRPropertyName. Когда пользователь выбирает одну из строк или вводит новые данные в текстовое поле, свойству ulPRPropertyName присваивается выбранное или введенное значение.

Чтобы отобразить начальное значение для элемента управления редактированием, MAPI вызывает IMAPIProp::GetProps для получения значений свойств для отображаемой таблицы. Если одно из полученных свойств соответствует свойству, представленному элементом ulPRPropertyName , его значение становится начальным значением.

Общие сведения о отображаемых таблицах см. в разделе Таблицы отображения. Сведения о реализации отображаемой таблицы см. в разделе Реализация таблицы отображения.

См. также

DTCTL
Структуры MAPIканонического свойства PidTagControlType