Web-Erweiterungen

Web-Erweiterungen

Dieses Handbuch zeigt, wie man die Metadaten der Task-Pane eines Office-Add-ins, die in einer .docx-Datei eingebettet sind, mit Aspose.Words FOSS für .NET lesen und ändern kann. Aspose.Words FOSS für .NET kann die Web-Extension (Office-Add-ins) Task-Panes, die in einer .docx-Datei eingebettet sind – die Metadaten, die ein Dokument mit einem Office-Add-in verknüpfen und es an Dokumentdaten binden – über Document.WebExtensionTaskPanes und das TaskPane/WebExtension-Objektmodell lesen und ändern.


Task-Panes

Document.WebExtensionTaskPanes liefert ein TaskPaneCollection von TaskPane-Objekten. Jeder TaskPane beschreibt, wo und wie das Pane eines Add-ins angedockt ist: DockState (ein TaskPaneDockState von Right oder Left), Row, Width, IsLocked und IsVisible, plus eine WebExtension-Eigenschaft, die auf das Add-in selbst verweist.


Web-Extension-Identität und Referenzen

WebExtension identifiziert das Add-in über Id und IsFrozen und seine Reference-Eigenschaft (ein WebExtensionReference) stellt Id, Version, Store und StoreType (ein WebExtensionStoreType wie SPCatalog, Exchange oder FileSystem) bereit, die beschreiben, von wo das Add-in verteilt wird. AlternateReferences enthält ein WebExtensionReferenceCollection von Fallback-Referenzen.


Bindungen und benutzerdefinierte Eigenschaften

WebExtension.Bindings ist ein WebExtensionBindingCollection von WebExtensionBinding Objekten, von denen jedes als new WebExtensionBinding(id, bindingType, appRef) konstruiert wird und einen Teil der Dokumentdaten über ein WebExtensionBindingType (Matrix, Table oder Text) mit dem Add-In verknüpft. WebExtension.Properties ist ein WebExtensionPropertyCollection einfacher WebExtensionProperty Name/Wert-Paare, konstruiert als new WebExtensionProperty(name, value), verwendet für add-in-spezifische benutzerdefinierte Einstellungen, die keinen vollständigen Bindung rechtfertigen.


Sammlungsmitgliedschaft

TaskPaneCollection, WebExtensionBindingCollection, WebExtensionPropertyCollection und WebExtensionReferenceCollection teilen alle das gleiche Grundsammlungsverhalten: Add(item), Clear(), Remove(index), GetEnumerator() und Count.


Tipps und bewährte Verfahren

  • Überprüfen Sie TaskPane.IsVisible, bevor Sie davon ausgehen, dass ein Add-In-Fenster dem Benutzer aktuell angezeigt wird — ein Task-Pane kann registriert, aber ausgeblendet sein.
  • WebExtensionReference.StoreType gibt an, woher ein Add-In stammt (Katalog, Exchange, Dateisystem, Registrierung); verwenden Sie es, um First-Party-Add-Ins von sideloaded Add-Ins zu unterscheiden.
  • Bindings verknüpfen ein bestimmtes WebExtensionBindingType (Matrix, Tabelle oder Klartext) mit Dokumentdaten — prüfen Sie den Bindungstyp, bevor Sie davon ausgehen, welche Datenform ein Add-In erwartet.
  • Verwenden Sie WebExtension.Properties für einfache Name/Wert-Add-In-Konfigurationswerte, anstatt zu versuchen, sie an anderer Stelle im Dokument zu speichern.

Allgemeine Probleme

ProblemUrsacheLösung
Document.WebExtensionTaskPanes ist leerIm Dokument sind keine Office-Add-Ins registriertBestätigen Sie, dass die Quelle .docx tatsächlich ein Task pane einbettet, bevor Sie annehmen, dass API defekt ist
Es lässt sich nicht feststellen, aus welchem Store ein Add-In stammtStoreType nicht überprüftLesen Sie WebExtensionReference.StoreType zusammen mit Store für das vollständige Bild
Die Bindungsdaten entsprechen nicht den ErwartungenBindungstyp stimmt nicht übereinÜberprüfen Sie WebExtensionBinding.BindingType (Matrix, Table, Text), bevor Sie gebundene Daten verwenden

FAQ

Wie finde ich alle Office Add-ins, die in einem Dokument registriert sind?

Auflisten Document.WebExtensionTaskPanes (ein TaskPaneCollection); jedes TaskPane.WebExtension gibt Ihnen die Identität und Konfiguration des Add-ins.

Kann ich mit diesem API eine neue Web-Extension-Bindung oder Eigenschaft hinzufügen?

Ja — die Sammlungen (WebExtensionBindingCollection, WebExtensionPropertyCollection, usw.) unterstützen Add(), sodass Sie neue WebExtensionBinding/WebExtensionProperty-Objekte zu einer bestehenden WebExtension konstruieren und hinzufügen können.

Was bindet WebExtensionBinding tatsächlich?

Es verknüpft einen Teil der Dokumentdaten mit dem Add-in, indem ein WebExtensionBindingType (Matrix, Table oder Text) verwendet wird, um die Struktur dieser Daten zu beschreiben.

Wie lese ich benutzerdefinierte Add-in-Einstellungen, die im Dokument gespeichert sind?

Durchlaufen Sie WebExtension.Properties (ein WebExtensionPropertyCollection); jedes WebExtensionProperty stellt ein Name/Value-Paar bereit.


API Reference Zusammenfassung

Klasse / MethodeBeschreibung
Document.WebExtensionTaskPanesTaskPaneCollection der im Dokument registrierten Task-Panes
TaskPaneEin Add-In-Bereich: DockState, Row, Width, IsVisible, IsLocked, WebExtension
WebExtensionAdd-In-Identität: Id, IsFrozen, Reference, Bindings, Properties
WebExtensionReferenceAdd-In-Quelle: Id, Version, Store, StoreType
WebExtensionBindingVerknüpft Dokumentdaten mit dem Add-In über WebExtensionBindingType
WebExtensionPropertyBenutzerdefinierte Add-In-Einstellung als Name/Value-Paar

Siehe auch

 Deutsch