Share via


IInfoPathViewControl Schnittstelle

Definition

Stellt ein Steuerelement dar, das in der Ansicht vorhanden ist.

public interface class IInfoPathViewControl
[System.Runtime.InteropServices.Guid("096CD6DA-0786-11D1-95FA-0080C78EE3BB")]
[System.Runtime.InteropServices.InterfaceType(1)]
public interface IInfoPathViewControl
type IInfoPathViewControl = interface
Public Interface IInfoPathViewControl
Attribute

Beispiele

Im folgenden Beispiel wird die Import-Methode der IInfoPathDataImporter-Schnittstelle verwendet, um mshtml zu durchlaufen. IEnumUnknown-Auflistung von IInfoPathViewControl-Steuerelementen in der Ansicht des aktiven Formulars.

Die Importroutine ist der Hauptteil einer Lösung, die zum Erstellen eines benutzerdefinierten Datenimporteurs verwendet wird. Das Visual Studio-Projekt erfordert einen Verweis auf die Microsoft Office InfoPath 2.0-Typbibliothek und System.Windows.Forms mit Imports-Anweisungen für jede sowie mshtml. Implementierungsanweisungen sind erforderlich, um die Signaturen für die Methoden zu generieren, die von den benutzerdefinierten Datenimportierschnittstellen bereitgestellt werden, einschließlich IInfoPathDataImporter, IInfoPathDataImporterFieldsIInfoPathViewControl, und IPropertyBag.

Hinweis: Aktivieren Sie das Kontrollkästchen Für COM-Interop registrieren auf der Registerkarte Kompilieren des Klasseneigenschaften-Editors, um einen benutzerdefinierten Datenimporter mithilfe einer .NET-Klassenbibliothek zu erstellen.

Hinweis: Um einen benutzerdefinierten Datenimport zu debuggen, legen Sie eine Startaktion in Visual Studio auf Starten eines externen Programms fest, und navigieren Sie zu INFOPATH.EXE unter <Laufwerk>:\Programme\Microsoft Office\Office12\. Diese Option ist auf der Registerkarte Debuggen des Klasseneigenschaften-Editors verfügbar.

Imports Microsoft.Office.Interop.InfoPath
Imports System.Windows.Forms
Imports mshtml

&lt;ComClass(Class1.ClassId, Class1.InterfaceId, Class1.EventsId)&gt; Public Class Class1
   Implements Microsoft.Office.Interop.InfoPath.IInfoPathDataImporter
   Implements Microsoft.Office.Interop.InfoPath.IInfoPathDataImporterFields
   Implements Microsoft.Office.Interop.InfoPath.IInfoPathViewControl
   Implements Microsoft.Office.Interop.InfoPath.IPropertyBag

   Public Const ClassId As String = _
      "1FEB0DF8-E7F1-4b21-A9EE-B06D5FECC572"
   Public Const InterfaceId As String = _
      "9F9F685C-71A0-46ec-A7F9-A86AF8CBC2A8"
   Public Const EventsId As String = _
      "ED7C0C49-3F89-40a2-A50E-C59E8F682B08" 

Public Sub Import(
   _ByVal pPrintSettings As Microsoft.Office.Interop.InfoPath.IPropertyBag, _
   ByVal punkViewControls As mshtml.IEnumUnknown) _
   Implements Microsoft.Office.Interop.InfoPath.IInfoPathDataImporter.Import

   Dim pControl As IInfoPathViewControl
   Dim pUnk As Object
   Dim pcelt As UInt16 = 1
   Dim pceltFetched As UInt16 = 0

   Try
      'Gets first control in the view
      punkViewControls.RemoteNext(pcelt, pUnk, pceltFetched)

      Do While pUnk.ToString() &lt;&gt; "Nothing"
         pControl = pUnk
         MessageBox.Show(pControl.ControlType)
         'Gets next control in the view
         punkViewControls.RemoteNext(pcelt, pUnk, pceltFetched)
      Loop
   Catch e As Exception
      If e.Message = _
         "Object reference not set to an instance of an object." Then
         ' Signals the end of the enumeration/controls in the view
      Else
         MessageBox.Show("Error: " &amp; e.ToString &amp; " " &amp; e.Message)
      End If
   End Try
End Sub

Hinweise

Die IInfoPathViewControl-Schnittstelle , die in Verbindung mit der IInfoPathDataImporter -Schnittstelle verwendet wird, ermöglicht Es Entwicklern, spezifische Informationen zu den Steuerelementen in der Ansicht abzurufen, z. B. die ControlType - und die DataType-Position , die Top - und Left -Position, die dem -Steuerelement zugeordnete XML-Datei NodeName und die InputScopes(IntPtr, UInt32, IEnumString, String). Die Value -Eigenschaft ist die einzige Eigenschaft, die festgelegt werden kann.

Eine Liste der Steuerelemente, die aufgelistet werden, wenn sie in der Ansicht vorhanden sind, finden Sie in der GetControls(IEnumUnknown) -Methode der IInfoPathDataImporterFields -Schnittstelle. Eine Liste der zulässigen Datentypen, die mit bestimmten Steuerelementen verwendet werden können, finden Sie in der Value -Eigenschaft der IInfoPathViewControl-Schnittstelle .

Weitere Informationen zum programmgesteuerten Importieren von Daten in ein InfoPath-Formular finden Sie im InfoPath Developer PortalMicrosoft Office Developer Center.

Eigenschaften

ControlType

Ruft den Steuerelementtyp des aktuellen Steuerelements in der -Enumeration ab.

DataType

Ruft den Datentyp eines Steuerelements in der Ansicht ab.

Height

Ruft die Höhe des aktuellen Steuerelements in der -Enumeration ab.

Left

Ruft den Offset des aktuellen Steuerelements in der -Enumeration von der linken Seite der Ansicht ab.

NodeName

Ruft den Namen des Knotens ab, der dem aktuellen Steuerelement in der -Enumeration zugeordnet ist.

Top

Ruft den Offset des aktuellen Steuerelements in der -Enumeration vom oberen Rand der Ansicht ab.

Value

Ruft den Wert des aktuellen Steuerelements in der -Enumeration ab oder legt den Wert fest.

Width

Ruft die Breite des aktuellen Steuerelements in der -Enumeration ab.

Methoden

InputScopes(IntPtr, UInt32, IEnumString, String)

Ruft den Eingabebereich des aktuellen Steuerelements in der -Enumeration ab.

Gilt für: