Интерфейс HTMLTaskPaneObject
Представляет пользовательскую область задач в форме Microsoft Office InfoPath 2007, связанной с окном.
Пространство имен: Microsoft.Office.Interop.InfoPath
Сборка: Microsoft.Office.Interop.InfoPath (в microsoft.office.interop.infopath.dll)
Синтаксис
'Декларация
<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
Заметки
Этот тип является программой-оболочкой для компонентного класса, которого требует управляемый программный код для COM-взаимодействия. Используйте этот тип для доступа к членам интерфейса COM, созданного этим компонентным классом. Дополнительные сведения об интерфейсе COM, включая ссылку на описания его членов, см. в статье HTMLTaskPane.
Объект HTMLTaskPane предоставляет ряд свойств и методов для работы с пользовательской областью задач InfoPath, а также свойства и методы объекта TaskPaneObject.
Свойства и методы, доступные для области задач InfoPath, определяются типом используемой области задач. Если свойство TaskPaneType возвращает 0, область задач является пользовательской областью задач, и доступные свойства и методы предоставляются объектом HTMLTaskPane. Если свойство TaskPaneType возвращает любое другое значение, область задач является встроенной, и свойства предоставляются объектом TaskPane.
Свойство TaskPaneType базируется на перечислении XdTaskPaneType. Эти перечисленные значения используются также в качестве аргументов для свойства Item коллекции TaskPanesCollection, с помощью которого возвращается ссылка на конкретный тип области задач.
Заметка |
---|
Свойства и методы объекта HTMLTaskPane не могут быть вызваны во время события _XDocumentEventSink2_OnLoadEventHandler, поскольку в момент осуществления этого события представление еще не загружено, а области задач связаны с этим представлением. |
Пример
В следующем примере свойство P:Microsoft.Office.Interop.InfoPath.TaskPanes.Item(System.Object) коллекции T:Microsoft.Office.Interop.InfoPath.TaskPanesCollection используется для получения ссылки на объект T:Microsoft.Office.Interop.InfoPath.TaskPaneObject, представляющий пользовательскую область задач. Затем программа вызывает метод Navigate объекта HTMLTaskPane для открытия 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");
}
В следующем примере свойство Item коллекции TaskPanesCollection используется для получения ссылки на объект TaskPaneObject, представляющий пользовательскую панель задач. Затем программа вызывает сценарий для функции, определенный в HTML-коде пользовательской панели задач с использованием свойства HTMLDocument объекта HTMLTaskPane, которое наследуется объектом 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);
}
}
См. также
Ссылка
Члены HTMLTaskPaneObject
Пространство имен Microsoft.Office.Interop.InfoPath