次の方法で共有


UI2.ShowModalDialog メソッド

Microsoft Office InfoPath 2007 フォームにカスタム モーダル ダイアログ ボックスを表示します。

このメソッドは、CLS に準拠していません。  

名前空間: Microsoft.Office.Interop.InfoPath.SemiTrust
アセンブリ: Microsoft.Office.Interop.InfoPath.SemiTrust (microsoft.office.interop.infopath.semitrust.dll 内)

構文

'宣言
<DispIdAttribute(2)> _
Function ShowModalDialog ( _
    bstrName As String, _
    varArguments As Object, _
    varHeight As Object, _
    varWidth As Object, _
    varTop As Object, _
    varLeft As Object _
) As Object
'使用
Dim instance As UI2
Dim bstrName As String
Dim varArguments As Object
Dim varHeight As Object
Dim varWidth As Object
Dim varTop As Object
Dim varLeft As Object
Dim returnValue As Object

returnValue = instance.ShowModalDialog(bstrName, varArguments, varHeight, varWidth, varTop, varLeft)
[DispIdAttribute(2)] 
Object ShowModalDialog (
    string bstrName,
    Object varArguments,
    Object varHeight,
    Object varWidth,
    Object varTop,
    Object varLeft
)

パラメータ

  • bstrName
    モーダル ダイアログ ボックスに使用される .html ファイルの名前。
  • varArguments
    モーダル ダイアログ ボックスを表示するときに使用する引数を指定します。値の配列など、任意の型の値を指定できます。
  • varHeight
    モーダル ダイアログ ボックスの高さを設定します。
  • varWidth
    モーダル ダイアログ ボックスの幅を設定します。
  • varTop
    デスクトップの左上隅を基準に、モーダル ダイアログ ボックスの上端を設定します。
  • varLeft
    デスクトップの左上隅を基準に、モーダル ダイアログ ボックスの左端を設定します。

戻り値

モーダル ダイアログ ボックスの表示方法を指定する object

コメント

ShowModalDialog メソッドを使用すると、ユーザーが完全に信頼できるフォームに記入するのに合わせて、カスタム ダイアログ ボックスを表示できます。カスタム ダイアログ ボックスは、Microsoft FrontPage など、どんな HTML エディタでも作成できる .html ファイルとして実装されます。varArguments パラメータを使用してカスタム ダイアログ ボックスにオブジェクトを渡すと、そのダイアログ ボックスでは InfoPath オブジェクト モデルを操作するスクリプト コードを使用できるようになります。

InfoPath フォームでカスタム ダイアログ ボックスを使用するには、まず [リソース ファイル] ダイアログ ボックスを使用して、フォームのリソース ファイル セットにカスタム ダイアログ ボックスの .html ファイルを追加する必要があります。[リソース ファイル] ダイアログ ボックスは、デザイン モードの [ツール] メニューから開くことができます。フォームにカスタム ダイアログ ボックスのファイルを追加したら、ShowModalDialog メソッドを使用して、そのファイルを表示できます。

ShowModalDialog メソッドは完全に信頼できるフォームでなければ使用できませんが、フォームに HTML 作業ウィンドウを指定しておくと、ダイナミック HTML (DHTML) オブジェクト モデルの showModalDialog メソッドを使用して標準のフォームにカスタム ダイアログ ボックスを作成できます。Windows フォームでも同じようにカスタム ダイアログ ボックスを作成できます。

メモ重要 :

このメンバは、[フォームのオプション] ダイアログ ボックスの [セキュリティと信頼] カテゴリを使用して完全信頼で実行するように構成されているフォーム テンプレートから開かれたフォームだけがアクセスできます。このメンバは、直接呼出し元に対する完全な信頼が必要であり、部分的に信頼されたコードで使用することはできません。詳細については、MSDN の「部分的に信頼されたコードからライブラリを使用する」を参照してください。

次の例では、UIObject オブジェクトの ShowModalDialog メソッドを使用して、カスタム ダイアログ ボックスを表示しています。varArguments パラメータを使用してカスタム ダイアログ ボックスに XDocument オブジェクトを渡している点に注意してください。

thisXDocument.UI.ShowModalDialog("show.htm",(object)thisXDocument,100,100,10,10);

次の例は、簡単なカスタム ダイアログ ボックスを実装する HTML コードの例です。DHTML ウィンドウ オブジェクト (この例では InfoPath オブジェクト モデルの XDocument オブジェクト) の dialogArguments プロパティを使用して、ShowModalDialog メソッドからカスタム ダイアログ ボックスに渡される値を取得している点に注意してください。ユーザーがカスタム ダイアログ ボックスの [警告の表示] ボタンをクリックすると、フォームの基になる XML ドキュメントのソース XML がメッセージ ボックスに表示されます。

<html>
<head>
<script language="jscript">
 var gobjXDocument = null;
 function Initialize()
 {
  // Save a reference to the XDocument object.
  if (typeof window.dialogArguments == "object")
  gobjXDocument = window.dialogArguments;
 }
</script>

<title>A Simple Custom Dialog Box</title>
</head>

<body style="BACKGROUND-COLOR: window" onLoad="Initialize()">
 <strong>Click one of the following buttons:</strong>
 <br/>
 <br/>
 <div id="divButtons" tyle="align:center">
 <input id="btnShowAlert" style="WIDTH: 106px; HEIGHT: 24px" 
  onclick='gobjXDocument.UI.Alert(gobjXDocument.DOM.xml);' 
   type="button" size="21" value="Show Alert"></input>
 <input id="btnCancel" style="WIDTH: 106px; HEIGHT: 24px" 
  onclick="window.close();" type="button" size="21" 
  value="Cancel"></input>
 </div>
</body>
</html>

ShowModalDialog ボックス メソッドの使用方法の詳細については、「[方法] InfoPath 2003 オブジェクト モデルを使用して警告とダイアログ ボックスを表示する方法」を参照してください。

関連項目

参照

UI2 インターフェイス
UI2 のメンバ
Microsoft.Office.Interop.InfoPath.SemiTrust 名前空間