Compartir a través de


IInfoPathViewControl Interfaz

Definición

Representa un control presente en la vista.

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
Atributos

Ejemplos

En el ejemplo siguiente, el método Import de la interfaz IInfoPathDataImporter se usa para recorrer en iteración el mshtml. Colección IEnumUnknown de controles IInfoPathViewControl en la vista del formulario activo.

La rutina Import es la parte principal de una solución que se usa para crear un importador de datos personalizado. El proyecto de Visual Studio requiere una referencia a la biblioteca de tipos de Microsoft Office InfoPath 2.0 y System.Windows.Forms, con instrucciones Imports para cada uno, así como mshtml. Las instrucciones implements son necesarias para generar las firmas de los métodos proporcionados por las interfaces de importador de datos personalizadas, como IInfoPathDataImporter, IInfoPathDataImporterFields, IInfoPathViewControly IPropertyBag.

Nota: Para crear un importador de datos personalizado mediante una biblioteca de clases .NET, active la casilla Registrar para interoperabilidad COM en la pestaña Compilar del editor de propiedades de clase.

Nota: Para depurar un importador de datos personalizado, establezca una acción iniciar en Visual Studio para iniciar un programa externo y vaya a INFOPATH.EXE ubicado en <drive>:\Archivos de programa\Microsoft Office\Office12\. Esta opción está disponible en la pestaña Depurar del editor de propiedades de clase.

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

Comentarios

La interfaz IInfoPathViewControl , que se usa junto con la IInfoPathDataImporter interfaz, permite a los desarrolladores obtener información específica sobre los controles de la vista, como ControlType las posiciones y DataType, Top y Left , el XML NodeName asociado al control y InputScopes(IntPtr, UInt32, IEnumString, String). La Value propiedad es la única propiedad que se puede establecer.

Para obtener una lista de los controles enumerados si están presentes en la vista, vea el GetControls(IEnumUnknown) método de la IInfoPathDataImporterFields interfaz. Para obtener una lista de tipos de datos aceptables que se pueden usar con controles específicos, vea la Value propiedad de la interfaz IInfoPathViewControl .

Para obtener más información sobre cómo importar datos mediante programación en un formulario de InfoPath, consulte el Portal para desarrolladores de InfoPathDel Centro para desarrolladores de Microsoft Office.

Propiedades

ControlType

Obtiene el tipo de control del control actual de la enumeración.

DataType

Obtiene el tipo de datos de un control en la vista.

Height

Obtiene el alto del control actual de la enumeración.

Left

Obtiene el desplazamiento, desde el lado izquierdo de la vista, del control actual de la enumeración.

NodeName

Obtiene el nombre del nodo asociado al control actual de la enumeración.

Top

Obtiene el desplazamiento, desde la parte superior de la vista, del control actual de la enumeración.

Value

Obtiene o establece el valor del control actual en la enumeración.

Width

Obtiene el ancho del control actual de la enumeración.

Métodos

InputScopes(IntPtr, UInt32, IEnumString, String)

Obtiene el ámbito de entrada del control actual de la enumeración.

Se aplica a