Как программно сделать редактируемое поле недоступным для редактирования
Уважаемые форумчане.
Есть задача: по определенному условию сделать редактируемое поле нередактируемым и наоборот. Проще говоря, чтобы замок появился на нем. Знаю, что есть свойство "enabled", ему нужно присвоить false. Как это сделать программно?
Заранее благодарен
Нравится
В самом простом случае, Вы скорее всего хотите бизнес правило блокировки:
https://academy.terrasoft.ru/documents/technic-sdk/7-8/pravilo-bindpara…
Если хочется именно по коду, в методах, то привяжите данное свойство контрола к атрибуту:
В секции атрибутов:
[javascript]
"SynchronizeWithLDAP": {
dataValueType: this.Terrasoft.DataValueType.BOOLEAN,
value: true
},
[/javascript]
В дифе:
[javascript]
{
"operation": "insert",
"name": "foo",
"values": {
"layout": {
"column": 0,
"row": 1,
"colSpan": 14
},
"bindTo": "foo",
"enabled": {"bindTo": "SynchronizeWithLDAP"}
},
"parentName": "bar",
"propertyName": "items",
"index": 1
},
[/javascript]
А потом по коду:
Доступно:
[javascript]
this.set("SynchronizeWithLDAP", true);
[/javascript]
Недоступно:
[javascript]
this.set("SynchronizeWithLDAP", false);
[/javascript]
Подобных примеров в базовой конфигурации очень много.
Мотков Илья,
Здравствуйте, хотел бы узнать, как вначале поле сделать доступным, а потом через dependencies, при изменении другого поля, сделать его недоступным?
Артём, это довольно старая переписка. С тех пор уже можно пользовательскими средствами настроить видимость/доступность/обязательность поля при помощи бизнес-правил.

