Как передать модель в Office 365 Dialog из Word 2016?

Я играл с надстройкой Office 365 для MS Word. У меня есть диалог для управления выбранным словом изображения. Мне нужно передать это изображение (может быть, значение Base64) в мой диалог, чтобы я мог поиграть с изображением, прежде чем вернуться обратно к слову (то же место).

Я использую код ниже, чтобы показать всплывающее окно:

Office.context.ui.displayDialogAsync("https://" + location.host + "/Views/ImageManager.html", { width: 64, height: 55, requireHTTPS: true }, function (asyncResult) {
    dialog = asyncResult.value;
    dialog.addEventHandler(Office.EventType.DialogMessageReceived, processMessage);
    if (asyncResult.status !== Office.AsyncResultStatus.Succeeded) {
        return;
    }
});

То, что я хотел сделать?

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

Как я могу передать мою модель изображения в диалог?

1 ответ

Есть как минимум два способа передать вещи в диалог:

  • Передайте его как параметр запроса в URL-адресе, который вы передаете displayDialogAsync()
  • Сохраните его в window.localStorage в сценарии хоста и извлеките его оттуда в сценарии на странице диалога.

ОБНОВЛЕНИЕ. Вы можете проголосовать за этот голос пользователя Office Dev для улучшения связи между диалоговым окном и его узлом: https://officespdev.uservoice.com/forums/224641-feature-requests-and-feedback/suggestions/17196659-improve-custom-dialog

Другие вопросы по тегам