OfficeJs - Как отобразить модальный диалог

Я использую OfficeJs для создания надстройки Word. В этом случае я хочу показать модальный диалог при нажатии на кнопку ленты. Я использовал ниже API

Office.context.ui.displayDialogAsync (URL, {высота: 30, ширина: 20}); для отображения диалога, но это не модальный диалог. Есть ли какой-нибудь API для отображения модального диалога с помощью officeJS.


person pooja    schedule 27.06.2020    source источник


Ответы (1)


Office.js не предоставляет никаких других методов для отображения диалогов. Из MSDN:

К диалоговым окнам относятся следующие конструктивные особенности:

  • В области задач надстройки Office может быть открыто только одно диалоговое окно. Одновременно можно открыть несколько диалоговых окон с помощью команд надстройки (настраиваемые кнопки ленты или пункты меню).
  • Каждое диалоговое окно может быть перемещено и изменено пользователем.
  • Каждое диалоговое окно при открытии центрируется на экране.
  • Диалоговые окна появляются в верхней части главного приложения и в том порядке, в котором они были созданы.

Используйте диалоговое окно, чтобы:

  • Отображение страниц аутентификации для сбора учетных данных пользователя.
  • Отображение экрана ошибки / прогресса / ввода с помощью команды ShowTaskpane или ExecuteAction.
  • Временно увеличьте площадь, доступную пользователю для выполнения задачи.
person Eugene Astafiev    schedule 27.06.2020
comment
Да Office.context.ui.displayDialogAsync (URL, {высота: 30, ширина: 20}); этот API показывает диалог, но после отображения диалога я могу редактировать документ. Мне нужен модальный диалог, чтобы я не мог редактировать дозу, когда диалог открыт. - person pooja; 29.06.2020
comment
Действительно нужны модальные диалоги в Office.js. По моему опыту, модальные диалоги гораздо более распространены и полезны в целом, чем немодальные. - person OfficeAddinDev; 10.12.2020
comment
Можем ли мы использовать опцию displayInIframe API диалога в этой ситуации? Office.context.ui.displayDialogAsync(url, {height: 30, width: 20, displayInIframe: true}); - person ApsSanj; 20.05.2021