次の方法で共有


HTMLTaskPaneObject インターフェイス

ウィンドウに関連付けられている、Microsoft Office InfoPath 2007 フォームのカスタム作業ウィンドウを表します。

 

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

構文

'宣言
<GuidAttribute("096cd548-0786-11d1-95fa-0080c78ee3bb")> _
<CLSCompliantAttribute(False)> _
<CoClassAttribute(GetType(HTMLTaskPaneObjectWrapper))> _
Public Interface HTMLTaskPaneObject
    Inherits HTMLTaskPane, TaskPane
'使用
Dim instance As HTMLTaskPaneObject
[GuidAttribute("096cd548-0786-11d1-95fa-0080c78ee3bb")] 
[CLSCompliantAttribute(false)] 
[CoClassAttribute(typeof(HTMLTaskPaneObjectWrapper))] 
public interface HTMLTaskPaneObject : HTMLTaskPane, TaskPane

コメント

この型は、COM 相互運用のためにマネージ コードで必要とされるコクラスのラッパーです。この型を使用して、このコクラスによって実装される COM インターフェイスのメンバにアクセスします。COM インターフェイスについては (このメンバの説明へのリンクを含む)、次を参照してください HTMLTaskPane

HTMLTaskPane オブジェクトには、InfoPath のカスタム作業ウィンドウを操作するためのプロパティやメソッドが数多く用意されています。 また、このオブジェクトは TaskPaneObject オブジェクトのプロパティやメソッドも提供します。

InfoPath の作業ウィンドウに対して使用できるプロパティとメソッドは、対象となる作業ウィンドウの種類によって決まります。TaskPaneType プロパティが 0 を返す場合、その作業ウィンドウはカスタム作業ウィンドウであり、使用できるプロパティとメソッドは HTMLTaskPane オブジェクトによって提供されます。TaskPaneType プロパティがそれ以外の値を返す場合、その作業ウィンドウは組み込みの作業ウィンドウであり、使用できるプロパティは TaskPane オブジェクトによって提供されます。

TaskPaneType プロパティは XdTaskPaneType 列挙に基づきます。これらの列挙値は、TaskPanesCollection コレクションの Item プロパティへの引数としても使用されます。その場合は、指定した種類の作業ウィンドウへの参照が返されます。

メモメモ :

_XDocumentEventSink2_OnLoadEventHandler イベントの発生時にはビューがまだ読み込まれておらず、作業ウィンドウはビューに関連付けられているため、このイベント中に HTMLTaskPane オブジェクトのプロパティやメソッドを呼び出すことはできません。

次の例では、T:Microsoft.Office.Interop.InfoPath.SemiTrust.TaskPanesCollection コレクションの P:Microsoft.Office.Interop.InfoPath.SemiTrust.TaskPanes.Item(System.Object) プロパティを使用して、カスタム作業ウィンドウを表す T:Microsoft.Office.Interop.InfoPath.SemiTrust.TaskPaneObject オブジェクトへの参照を取得します。次に、このコードは、HTMLTaskPane オブジェクトの Navigate メソッドを使用して、HTML ファイルを開きます。

public void CustomTaskPaneNavigation()
{
 // Get a reference to the custom task pane. It is always index [0] in the TaskPanes collection.   
 HTMLTaskPane oTaskPane = (HTMLTaskPane)thisXDocument.View.Window.TaskPanes[0];

 // Navigate based on url specified.
 oTaskPane.Navigate("taskpane2.html");
}

次の例では、TaskPanesCollection コレクションの Item プロパティを使用して、カスタム作業ウィンドウを表す TaskPaneObject オブジェクトへの参照を取得します。次に、このコードは、TaskPane オブジェクトから継承される HTMLTaskPane オブジェクトの HTMLDocument プロパティを使用して、カスタム作業ウィンドウの HTML コード内で定義されているスクリプト関数を呼び出します。

// Ensure View has loaded before trying to access the task pane.
if (thisXDocument.View != null)
{
 // Get a reference to the custom task pane.  It is always the 0-th
 // task pane in the TaskPanes collection.
 HTMLTaskPane custom = (HTMLTaskPane) thisXDocument.View.Window.TaskPanes[0];

 // Ensure that the task pane is completely loaded.
 if (custom != null && custom.HTMLDocument.readyState == "complete")
 {
  mshtml.IHTMLWindow2 window = custom.HTMLDocument.parentWindow;

  object[] args =  new object[] {"ViewID"};

  // call into script through CLR late binding mechanism
  window.GetType().InvokeMember(
   "SelectView",      // late bound method      
   System.Reflection.BindingFlags.InvokeMethod |   // binding flags
   System.Reflection.BindingFlags.DeclaredOnly | 
   System.Reflection.BindingFlags.Public | 
   System.Reflection.BindingFlags.Instance,     
   null,        // binder object
   window,        // target object
   args);
 }
}

関連項目

参照

HTMLTaskPaneObject のメンバ
Microsoft.Office.Interop.InfoPath.SemiTrust 名前空間