Очистите поле формы, а затем установите его только для чтения

У меня есть флажок и текстовое поле в моей форме InfoPath. Когда флажок не установлен, я хотел бы очистить содержимое поля, а затем пометить его как доступное только для чтения.

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

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

Я подозреваю, что изменение текстового поля на доступное только для чтения подавляет правило, которое очищает содержимое текстового поля. Кто-нибудь знает, как это исправить?


person oscarkuo    schedule 20.07.2009    source источник


Ответы (3)


Да это странно...

Если вы вернетесь и добавите правило в флажок, чтобы обновить значение текстового поля, когда значение флажка равно «Истина». Вы увидите, что правило в текстовом поле теперь выбрано.

Я не уверен, почему это так, но я предполагаю, что это потому, что условное форматирование останавливает все правила в элементе управления и, добавляя новое правило в флажок, запускает правила в элементе управления.

person YetAnotherDeveloper    schedule 28.07.2009

Это, безусловно, ошибка InfoPath, поскольку у меня были такие же трудности с сочетанием условного форматирования с правилами (условное изменение никогда не меняет форматирование)

person Janie    schedule 20.07.2009

Поместите правило в элемент управления, значение которого вы меняете, поэтому в этом случае добавьте правило в флажок, а не в поле, которое вы хотите очистить.

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

person Community    schedule 03.08.2009