2009-06-09 3 views
1

Я создаю форму InfoPath, которая привязана к базе данных Access. У меня есть набор переключателей, в которых пользователь выбирает имя программного обеспечения, соответствующее форме, но я храню его в своей базе данных как число (1, 2 или 3). В другом представлении я хочу, чтобы они могли видеть ранее введенное имя программного обеспечения, но не могли его изменить. Вот два варианта я надумал:Сделать радиокнопку в форме infopath «только для чтения»?

  1. Создать какое-нибудь правило, которое делает не позволяет пользователю изменять эти данные

    Это похоже на естественный подход для того, что я хочу сделать.

  2. Добавить текстовое поле с отображением функции каждого номер к соответствующему программному обеспечению

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

  3. Измените переменную radio box на текстовые значения и создайте текстовое поле в новом представлении, которое можно сделать доступным только для чтения.

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

Есть ли какое-то правило/метод, который я мог бы использовать, чтобы заставить эту кнопку переключаться только для чтения?

ответ

3

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

  1. правой кнопкой мыши на вашем управления и выберите Условное форматирование ...
  2. Нажмите Добавить ...
  3. В крайнем левом раскрывающемся списке выберите выражение
  4. типа верно() в текстовом поле (это говорит InfoPath всегда применить это форматирование)
  5. Отметить Отключить этот элемент управления checkbox.
  6. Нажмите OK и OK.

Примечание: вам нужно будет сделать это для каждой из ваших переключателей.

Кроме того, для справок в будущем: Если вы просто хотите отобразить результат функции (например, во втором решении), вам не нужно использовать текстовое поле. Вы можете использовать поле выражения. Поле выражения необязательно связано с полем в datasorce, поэтому вам не понадобится дополнительный столбец в вашей базе данных.

+1

Чтение этого очень поздно, но зачем вам нужно делать это на каждом переключателе, а не группе параметров, дочерними элементами которой являются?Если родительская группа параметров отключена, все дочерние элементы управления также отключены. –