Partager via


HtmlTaskPane.HtmlDocument - Propriété

Obtient une référence à l'interface IHTMLDocument2 MSHTML pour travailler avec le modèle objet du document HTML d'un volet Office personnalisé.

Espace de noms :  Microsoft.Office.InfoPath
Assembly :  Microsoft.Office.InfoPath (dans Microsoft.Office.InfoPath.dll)

Syntaxe

'Déclaration
Public MustOverride ReadOnly Property HtmlDocument As Object
    Get
'Utilisation
Dim instance As HtmlTaskPane
Dim value As Object

value = instance.HtmlDocument
public abstract Object HtmlDocument { get; }

Valeur de propriété

Type : System.Object
Objet IHTMLDocument2 associé au fichier HTML du volet Office personnalisé.

Remarques

La propriété HtmlDocument vous permet d'appeler des fonctions de script contenues dans le code HTML du volet Office par le biais de la liaison tardive, comme dans le deuxième exemple ci-dessous. Vous pouvez également manipuler directement le code HTML du volet Office à l'aide de n'importe quelle propriété et méthode fournie par l'interface IHTMLDocument2.

Pour travailler avec l'objet IHTMLDocument2 renvoyé par la propriété HtmlDocument, vous devez ajouter une référence à Microsoft.mshtml sous l'onglet .NET de la boîte de dialogue Ajouter une référence dans Visual Studio 2012. De plus, vous devez convertir l'objet renvoyé par la propriété HtmlDocument au type IHTMLDocument2 .

Seuls les formulaires qui s’exécutent dans le même domaine que le formulaire actuellement ouvert ou les formulaires disposant d’autorisations inter-domaines peuvent accéder à ce membre.

Vous pouvez uniquement accéder à ce type ou à ce membre à partir du code exécuté dans les formulaires ouverts dans Microsoft InfoPath Filler.

Exemples

Les exemples suivants supposent que vous avez une directive using mshtml; ou Imports mshtml dans la section des déclarations du fichier de code de votre formulaire.

Dans l'exemple suivant, la propriété HtmlDocument de la classe HtmlTaskPane est utilisée pour définir une référence à l'objet window HTML du volet Office personnalisé d'un formulaire en autorisation totale. Le code change ensuite la couleur d'arrière-plan du volet Office.

// 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"

Dans l'exemple suivant, la propriété HtmlDocument de la classe HtmlTaskPane est utilisée pour définir une référence à l'objet window HTML du volet Office personnalisé d'un formulaire avec autorisation totale. Le code appelle ensuite la fonction personnalisée TaskPaneSwitchView définie dans le code HTML du volet Office personnalisé.

   // 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)

Voir aussi

Référence

HtmlTaskPane classe

HtmlTaskPane - Membres

Microsoft.Office.InfoPath - Espace de noms