HtmlTaskPane.HtmlDocument プロパティ
カスタム作業ウィンドウの HTML ドキュメント オブジェクト モデルで作業するための MSHTML IHTMLDocument2 インターフェイスへの参照を取得します。
名前空間: Microsoft.Office.InfoPath
アセンブリ: Microsoft.Office.InfoPath (microsoft.office.infopath.dll 内)
構文
'宣言
Public MustOverride ReadOnly Property HtmlDocument As Object
'使用
Dim instance As HtmlTaskPane
Dim value As Object
value = instance.HtmlDocument
public abstract Object HtmlDocument { get; }
プロパティ値
カスタム作業ウィンドウの HTML ファイルに関連付けられている IHTMLDocument2 オブジェクト。
コメント
HtmlDocument プロパティを使用すると、下の 2 番目の例のように、遅延バインディングによって、作業ウィンドウの HTML コード内のスクリプト関数を呼び出すことができます。また、IHTMLDocument2 インターフェイスが提供するプロパティとメソッドを使用して、作業ウィンドウの HTML コードを直接操作することもできます。
HtmlDocument プロパティによって返された IHTMLDocument2 オブジェクで作業するには、Microsoft Visual Studio Tools for Applications (VSTA) または Visual Studio の [参照の追加] ダイアログ ボックスの [.NET] タブで Microsoft.mshtml への参照を追加する必要があります。さらに、HtmlDocument プロパティによって返されたオブジェクトを IHTMLDocument2 型にキャストしなければなりません。
このメンバは、現在開いているフォームと同じドメイン内で実行されているフォーム、またはドメインを越えたアクセス許可を付与されているフォームだけがアクセスできます。
この型またはメンバは、Microsoft Office InfoPath 2007 で開いているフォームで実行されているコードからのみアクセスできます。
例
次の例では、既にフォーム コード ファイルの宣言セクションに using mshtml;
または Imports mshtml
ディレクティブが記述してあるものとしています。
次の例では、HtmlTaskPane クラスの HtmlDocument プロパティを使用して、完全に信頼されたフォームのカスタム作業ウィンドウの HTML window オブジェクトへの参照を設定しています。次に、このコードは、カスタム作業ウィンドウの背景色を変更します。
// Get a reference to the custom task pane. It is always index [0]
// in the TaskPanes collection.
HtmlTaskPane custom = (Microsoft.Office.InfoPath.HtmlTaskPane)
(this.CurrentView.Window.TaskPanes[0]);
// Get a reference to the custom task pane document and cast to
// the IHTMLDocument2 type.
IHTMLDocument2 oHTMLdoc = (IHTMLDocument2)(custom.HtmlDocument);
// Change custom task pane background color to red.
oHTMLdoc.bgColor = "red";
' Get a reference to the custom task pane. It is always index [0]
' in the TaskPanes collection.
Dim custom As HtmlTaskPane = DirectCast( _
Me.CurrentView.Window.TaskPanes(0), _
Microsoft.Office.InfoPath.HtmlTaskPane)
' Get a reference to the custom task pane document and cast to
' the IHTMLDocument2 type.
IHTMLDocument2 oHTMLdoc = _
DirectCast(custom.HtmlDocument,IHTMLDocument2)
' Change custom task pane background color to red.
oHTMLdoc.bgColor = "red"
次の例では、HtmlTaskPane クラスの HtmlDocument プロパティを使用して、完全に信頼されたフォームのカスタム作業ウィンドウの HTML window オブジェクトへの参照を設定しています。その後、このコードは、カスタム作業ウィンドウの HTML コードで定義されている TaskPaneSwitchView カスタム関数を呼び出します。
// Get a reference to the custom task pane. It is always index [0]
// in the TaskPanes collection.
HtmlTaskPane custom = (Microsoft.Office.InfoPath.HtmlTaskPane)
this.CurrentView.Window.TaskPanes[0];
// Get a reference to the custom task pane document.
IHTMLDocument2 oHTMLdoc = (IHTMLDocument2)custom.HtmlDocument;
// Get a reference to the parent window of the task pane.
IHTMLWindow2 window = (IHTMLWindow2)oHTMLdoc.parentWindow;
// Call into script through CLR late binding mechanism.
window.GetType().InvokeMember(
"TaskPaneSwitchView", // late bound method name.
System.Reflection.BindingFlags.InvokeMethod | // binding flags
System.Reflection.BindingFlags.DeclaredOnly |
System.Reflection.BindingFlags.Public |
System.Reflection.BindingFlags.Instance,
null, // binder object
window, // target object
null); // method arguments
' Get a reference to the custom task pane. It is always index (0)
' in the TaskPanes collection.
Dim custom As HtmlTaskPane = _
DirectCast(Me.CurrentView.Window.TaskPanes(0), _
Microsoft.Office.InfoPath.HtmlTaskPane)
' Get a reference to the custom task pane document.
Dim oHTMLdoc As IHTMLDocument2 = DirectCast(
custom.HtmlDocument, IHTMLDocument2)
' Get a reference to the parent window of the task pane.
Dim window As IHTMLWindow2 = DirectCast(oHTMLdoc.parentWindow, _
IHTMLWindow2
' Call into script through CLR late binding mechanism.
window.GetType().InvokeMember( _
"TaskPaneSwitchView", _
System.Reflection.BindingFlags.InvokeMethod Or _
System.Reflection.BindingFlags.DeclaredOnly Or _
System.Reflection.BindingFlags.Public Or _
System.Reflection.BindingFlags.Instance, _
Nothing, _
window, _
Nothing)
関連項目
参照
HtmlTaskPane クラス
HtmlTaskPane のメンバ
Microsoft.Office.InfoPath 名前空間