HTMLTaskPaneObject (Interfaz)
Representa un panel de tareas personalizado de un formulario de Microsoft Office InfoPath 2007 asociado a una ventana.
Espacio de nombres: Microsoft.Office.Interop.InfoPath
Ensamblado: Microsoft.Office.Interop.InfoPath (en microsoft.office.interop.infopath.dll)
Sintaxis
<GuidAttribute("096CD548-0786-11D1-95FA-0080C78EE3BB")> _
<CoClassAttribute(GetType(HTMLTaskPaneObjectClass))> _
Public Interface HTMLTaskPaneObject
Inherits HTMLTaskPane
Dim instance As HTMLTaskPaneObject
[GuidAttribute("096CD548-0786-11D1-95FA-0080C78EE3BB")]
[CoClassAttribute(typeof(HTMLTaskPaneObjectClass))]
public interface HTMLTaskPaneObject : HTMLTaskPane
Comentarios
Este tipo es un contenedor para una coclase que necesita el código administrado para su interoperabilidad COM. Use este tipo para obtener acceso a los miembros de la interfaz COM implementada por esta coclase. Para obtener información sobre la interfaz COM, así como un vínculo a descripciones de sus miembros, vea HTMLTaskPane.
El objeto HTMLTaskPane incluye varias propiedades y varios métodos para trabajar con el panel de tareas personalizado de InfoPath, y proporciona propiedades y métodos del objeto TaskPaneObject.
Las propiedades y los métodos que están disponibles para un panel de tareas de InfoPath vienen determinados por el tipo de panel de tareas con que se trabaje. Si la propiedad TaskPaneType devuelve 0, el panel de tareas será personalizado y las propiedades y métodos que estén disponibles procederán del objeto HTMLTaskPane. Si la propiedad TaskPaneType devuelve cualquier otro valor, se tratará de un panel de tares integrado y sus propiedades procederán del objeto TaskPane.
La propiedad TaskPaneType se basa en la enumeración XdTaskPaneType. Estos valores enumerados también se utilizan como argumentos para la propiedad Item de la colección TaskPanesCollection para devolver una referencia al tipo de panel de tareas especificado.
Nota: |
---|
No se puede llamar a las propiedades y los métodos del objeto HTMLTaskPane durante un evento _XDocumentEventSink2_OnLoadEventHandler porque la vista aún no está cargada cuando ocurre este último, y los paneles de tareas están asociados a la vista. |
Ejemplo
En el ejemplo siguiente, la propiedad P:Microsoft.Office.Interop.InfoPath.TaskPanes.Item(System.Object) de la colección T:Microsoft.Office.Interop.InfoPath.TaskPanesCollection se utiliza para obtener una referencia al objeto T:Microsoft.Office.Interop.InfoPath.TaskPaneObject que representa el panel de tareas personalizado. A continuación, el código llama al método Navigate del objeto HTMLTaskPane para abrir un archivo HTML.
public void CustomTaskPaneNavigation()
{
// Get a reference to the custom task pane. It is always index [0] in the TaskPanes collection.
HTMLTaskPane oTaskPane = (HTMLTaskPane)thisXDocument.View.Window.TaskPanes[0];
// Navigate based on url specified.
oTaskPane.Navigate("taskpane2.html");
}
En el siguiente ejemplo, se utiliza la propiedad Item de la colección TaskPanesCollection para obtener una referencia al objeto TaskPaneObject que representa al panel de tareas personalizado. A continuación, el código llama a una función de secuencia de comandos definida en el código HTML del panel de tareas personalizado mediante la propiedad HTMLDocument del objeto HTMLTaskPane, que es heredado por el objeto TaskPane.
// Ensure View has loaded before trying to access the task pane.
if (thisXDocument.View != null)
{
// Get a reference to the custom task pane. It is always the 0-th
// task pane in the TaskPanes collection.
HTMLTaskPane custom = (HTMLTaskPane) thisXDocument.View.Window.TaskPanes[0];
// Ensure that the task pane is completely loaded.
if (custom != null && custom.HTMLDocument.readyState == "complete")
{
mshtml.IHTMLWindow2 window = custom.HTMLDocument.parentWindow;
object[] args = new object[] {"ViewID"};
// call into script through CLR late binding mechanism
window.GetType().InvokeMember(
"SelectView", // late bound method
System.Reflection.BindingFlags.InvokeMethod | // binding flags
System.Reflection.BindingFlags.DeclaredOnly |
System.Reflection.BindingFlags.Public |
System.Reflection.BindingFlags.Instance,
null, // binder object
window, // target object
args);
}
}
Vea también
Referencia
HTMLTaskPaneObject (Miembros)
Microsoft.Office.Interop.InfoPath (Espacio de nombres)