Есть перечисление, в нем есть два значения - Значение1 и Значение2. Есть компонент EnumDataControl, который отображает эти значения. Как сделать, чтобы при определенных условиях в выпадающем списке EnumDataControl-а отображалось только одно из значений перечисления?
Нравится
Добрый день!
Либо записать значение в поле, и сделать его неактивным.
Либо вместо перечисления воспользоваться справочником и использовать метод OnPrepareSelectWindow.
можно попробовать удалять "лишние" элементы из перечисления
var Enum = YourEnumDataControl.DataField.Enum; var EnumItem = Enum.ItemsByCode('NeededCode'); if (EnumItem) { Enum.Remove(EnumItem); }
аналогично добавлять нужные (см SDK)...
тогда можно попробовать покопаться в направлении переназначать Enum для контрола, может быть попытаться использовать EnumControl (без Data) и написать обработчики для его заполнения и сохранения выбранного значения
а в целом, если задача стоит просто быстро решить задачу - справочник вместо enum, как уже говорилось:smile: