de la propiedad HtmlTaskPane.HtmlWindow
Obtiene una referencia a la interfaz IHTMLWindow2 de MSHTML para trabajar con el documento HTML de un panel de tareas personalizado.
Espacio de nombres: Microsoft.Office.InfoPath
Ensamblado: Microsoft.Office.InfoPath (en Microsoft.Office.InfoPath.dll)
Sintaxis
'Declaración
Public MustOverride ReadOnly Property HtmlWindow As Object
Get
'Uso
Dim instance As HtmlTaskPane
Dim value As Object
value = instance.HtmlWindow
public abstract Object HtmlWindow { get; }
Valor de propiedad
Tipo: System.Object
Objeto IHTMLWindow2 asociado al archivo HTML del panel de tareas personalizado.
Excepciones
Excepción | Condición |
---|---|
SecurityException | La plantilla del formulario no está configurada para Plena confianza utilizando la categoría Seguridad y confianza del cuadro de diálogo Opciones de formulario. |
Comentarios
Utilizando la propiedad HtmlWindow, puede llamar a las funciones de secuencias de comandos contenidas en el código HTML del panel de tareas desde el código de formulario primario, manipular dicho código y trabajar con cualquiera de las propiedades y métodos que proporciona la interfaz IHTMLWindow2.
Nota
La propiedad HtmlWindow proporciona la misma funcionalidad que la propiedad HtmlDocument, pero sólo está disponible cuando se utiliza un formulario de plena confianza. Si el formulario no es de plena confianza, utilice la propiedad HtmlDocument en su lugar.
Solo se puede acceder a este miembro con formularios abiertos desde una plantilla de formulario que haya sido configurada para ejecutarse con confianza total usando la categoría Seguridad y confianza del cuadro de diálogo Opciones de formulario. Este miembro requiere confianza total para el autor de llamada inmediato y no se puede utilizar en un código de confianza parcial. Si desea más información, consulte "Utilizar bibliotecas de código que no es de plena confianza" en MSDN.
Únicamente se puede acceder a este tipo o miembro desde el código que se ejecuta en los formularios abiertos en Microsoft InfoPath Filler.
Ejemplos
En el ejemplo siguiente, se usa la propiedad HtmlWindow de la clase HtmlTaskPane para establecer una referencia al objeto IHTMLWindow2 del panel de tareas personalizado de un formulario de plena confianza. A continuación, el código llama a la función personalizada TaskPaneSwitchView definida en el código HTML del panel de tareas personalizado.
// 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 parent window of the task pane.
IHTMLWindow2 window = (IHTMLWindow2)custom.HtmlWindow;
// 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 parent window of the task pane.
Dim window As IHTMLWindow2 = DirectCast(custom.HtmlWindow, _
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)