1. SPEAKの使用

SPEAKダイアログを開く

Version:
日本語翻訳に関する免責事項

このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。

SPEAKダイアログは、ユーザーが特定のタスクを実行するために開くスタンドアロンのSPEAKページです。たとえば、Select Mediaダイアログです。ユーザーはダイアログを開き、タスクを実行してから、ダイアログを再度閉じます。

SPEAKアプリケーションでは、ユーザーはメニューまたはその他のナビゲーション ツールからアプリケーションのページを開きます。通常、ユーザーはボタンまたはリンクからSPEAKダイアログを開きます。これは、SPEAKページからだけでなく、SheerUIで作成されたページからも実行できます。

このトピックでは、次の方法について説明します。

  • SheerUIからSPEAKダイアログを開く

  • 既存のSheerUIダイアログをSPEAKダイアログに置き換える

  • SPEAKからSPEAKダイアログを開く

SheerUIからSPEAKダイアログを開く

この機能を使用して、SheerUIからSPEAKダイアログを開くことができます。

public static ClientCommand ShowModalDialog(ModalDialogOptions options)

SPEAKページを開くには、次のコードを使用します。

SheerResponse.ShowModalDialog(new ModalDialogOptions(url)
{
  Width = "100",
  Height = "200",
  Response = true,
  ForceDialogSize = true
});

関連するパラメータは次のとおりです。

Option

Description

文字列のURL

SPEAKページのSitecoreパスを指定します (例: /sitecore/client/applications/dialogs/myPage

文字列の幅

SPEAKダイアログの幅を設定します。たとえば、100

文字列の高さ

SPEAKダイアログの高さを設定します。たとえば、200

boolレスポンス

Trueの場合、Sitecoreはダイアログが閉じられたときにダイアログの結果をサーバーに返します

ブールForceDialogSize

SPEAKがWidthとHeightの値を使用するかどうかを決定します。 Trueの場合、SPEAKはダイアログのサイズにこれらの値を使用します。

既存のダイアログをSPEAKダイアログに置き換える

既存のSheerUIダイアログをSPEAKダイアログに置き換えるには、SPEAKダイアログを使用するようにSitecoreを設定するだけです。これにより、Sitecoreはどこでも古いダイアログではなくSPEAKダイアログを使用するように指示されます。古いダイアログを開くリンクやボタンを変更する必要はありません。

置換は次のように構成します。

  1. Website\App_Config\Includeフォルダ内のSitecore.Speak.Applications.configファイルを開きます。

  2. <overrideXmlControls> ノードと <overrideDialogs> ノードには、古いダイアログとそれを置き換えるSPEAKページのリストが次の形式で含まれています:<override dialogUrl="<path to old dialog" with="path to SPEAK page" />例:<override dialogUrl="/sitecore/shell/Applications/Item%20browser.aspx" with="/sitecore/client/applications/dialogs/InsertSitecoreItemViaTreeDialog" />置き換えるダイアログと新しいページをこのリストに追加します。

Sitecoreは、このためにHttpRequestパイプラインでOverrideDialogsOverrideXmlControlの2つのプロセッサを使用します。

Sitecoreは、このアプローチを使用して、多くのレガシー ダイアログを置き換えます。SitecoreはXmlControlsを使用して従来のSelect Mediaダイアログを作成するため、OverrideXmlControlプロセッサを使用します – aspxダイアログはOverrideDialogsプロセッサを使用します。

SPEAKからSPEAKダイアログを開く

ほとんどのダイアログは、DialogWindowコンポーネントを使用してSPEAKでネイティブに作成します。

スタンドアロンページをSPEAK内のダイアログとして開く必要がある場合は、DialogWindowコンポーネントを使用してから、フレームcomponentを使用して実際のダイアログを表示することもできます。

たとえば、ButtonコントロールのClickイベントにJavaScriptを追加してDialogWindowダイアログを開くには、次のコードを使用します。

javascript:app.DialogWindow1.show()

この記事を改善するための提案がある場合は、 お知らせください!