DictionaryMultiSelectEdit

Элемент управления DictionaryMultiSelectEdit (из пространства имен Ultima.Client.Controls) исполняет функционал элемента управления CheckedComboBoxEdit пакета DevExpress. Используется для выбора нескольких записей плоского или древовидного (записи также представлены в виде списка) справочника:

Control_DictionaryMultiSelectEdit

Элемент управления обладает следующими специфичными свойствами:

DictionaryType – справочник, с данными которого будет работать элемент управления;

AllowClear – в значении true отображается кнопка, сбрасывающая выбранные в элементе управления значения (5);

IDEditAutoWidth – в значении true (по умолчанию) ширина поля (1) IDEditWidth трактуется, как минимальная ширина поля (включая кнопки (2) и (3)). При этом, если вводимый идентификатор не помещается в поле (1), ширина поля  автоматически увеличивается соответственно размерам вводимого номера;

IDEditVisible – в значении true отображается поле кода записи (1). В значении false кнопки (2) и (3) смещаются направо за поле (4):

СКРИНШОТ

IDEditWidth – общая ширина блока, включающего поле (1) и кнопки (2), (3);

LookupButtonVisible – в значении true отображается кнопка, по которой раскрывается список элемента управления (2);

SelectButtonVisible – в значении true отображается кнопка открытия списковой формы справочника для выбора записи (3).

На функционал и внешний вид DictionaryMultiSelectEdit влияют следующие свойства справочников:

Is small – для маленьких справочников, с установленным флагом Is small, недоступен функционал поиска. Но при этом в элемент управления при открытии попадает выборка всех записей справочника;

Control_DictionaryMultiSelectEdit1

Записи больших справочников при первом открытии в элемент управления не попадают. Для их отображения необходимо воспользоваться поиском, ограничивающим выборку;

Control_DictionaryMultiSelectEdit2

Display format – определяет формат, в котором в поле (4) элемента управления будут отображаться выбранная запись. Для приведенного в примере справочника товаров значение этого параметра "{ID}, {Name}". Если значение Display format не задано, формат будет сформирован из значений всех свойств справочника, кроме свойств типа LargeText и byte[]:

Control_DictionaryMultiSelectEdit3

Search property – определяет, по какому свойству справочника будут производится поиск. Для приведенного в примере справочника товаров значение этого параметра "Name";

Lookup – атрибут свойств справочника – определяет, что свойство справочника будут отображаться в выпадающем списке элемента управления (идентификатор записи справочника ID отображается всегда). Если ни одно из свойств справочника не помечено этим атрибутом, в список попадут свойства, перечисленные в Display format. Если Display format также пуст – в списке элемента управления выводятся все свойства, кроме свойств типа LargeText и byte[];