Freigeben über


HtmlTaskPane.HtmlDocument-Eigenschaft

Ruft einen Verweis auf die MSHTML-IHTMLDocument2-Schnittstelle zum Arbeiten mit dem HTML-Dokumentobjektmodell eines benutzerdefinierten Aufgabenbereichs ab.

Namespace:  Microsoft.Office.InfoPath
Assembly:  Microsoft.Office.InfoPath (in Microsoft.Office.InfoPath.dll)

Syntax

'Declaration
Public MustOverride ReadOnly Property HtmlDocument As Object
    Get
'Usage
Dim instance As HtmlTaskPane
Dim value As Object

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

Eigenschaftswert

Typ: System.Object
Ein IHTMLDocument2-Objekt, das der HTML-Datei des benutzerdefinierten Aufgabenbereichs zugeordnet ist.

Hinweise

Mithilfe der HtmlDocument-Eigenschaft können Sie Skriptfunktionen im HTML-Code des Aufgabenbereichs über eine späte Bindung aufrufen, wie im zweiten Beispiel unten gezeigt wird. Außerdem können Sie den HTML-Code des Aufgabenbereichs mithilfe der Eigenschaften und Methoden, die die IHTMLDocument2-Schnittstelle bereitstellt, direkt bearbeiten.

Zum Arbeiten mit dem IHTMLDocument2-Objekt, das von der HtmlDocument-Eigenschaft zurückgegeben wird, müssen Sie auf der Registerkarte .NET des Dialogfelds Verweis hinzufügen in Visual Studio 2012 einen Verweis auf Microsoft.mshtml hinzufügen. Darüber hinaus müssen Sie das von der HtmlDocument-Eigenschaft zurückgegebene Objekt in den IHTMLDocument2 -Typ umwandeln.

Auf dieses Mitglied kann nur mithilfe von Formularen zugegriffen werden, die in der gleichen Domäne wie das derzeit geöffnete Formular ausgeführt werden oder denen domänenübergreifende Berechtigungen zugewiesen wurden.

Auf diesen Typ oder dieses Mitglied kann nur über Code zugegriffen werden, der in Formularen ausgeführt wird, die in Microsoft InfoPath Filler geöffnet wurden.

Beispiele

Bei den folgenden Beispielen wird davon ausgegangen, dass die Direktiven using mshtml; oder Imports mshtml sich im Deklarationsabschnitt der Formularcodedatei befinden.

Im folgenden Beispiel wird die HtmlDocument-Eigenschaft der HtmlTaskPane-Klasse verwendet, um einen Verweis auf das HTML-window-Objekt des benutzerdefinierten Aufgabenbereichs eines vollständig vertrauenswürdigen Formulars festzulegen. Anschließend ändert der Code die Hintergrundfarbe des benutzerdefinierten Aufgabenbereichs.

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

Im folgenden Beispiel wird die HtmlDocument-Eigenschaft der HtmlTaskPane-Klasse verwendet, um einen Verweis auf das HTML-window-Objekt des benutzerdefinierten Aufgabenbereichs eines vollständig vertrauenswürdigen Formulars festzulegen. Anschließend ruft der Code die benutzerdefinierte Funktion TaskPaneSwitchView auf, die im HTML-Code des benutzerdefinierten Aufgabenbereichs definiert ist.

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

Siehe auch

Referenz

HtmlTaskPane Klasse

HtmlTaskPane-Member

Microsoft.Office.InfoPath-Namespace