Web Uzantıları
Web Uzantıları
Bu kılavuz, .docx dosyasına gömülü Office Add-in görev bölmesi meta verilerini Aspose.Words FOSS kullanarak .NET için nasıl okuyup değiştireceğinizi gösterir. Aspose.Words FOSS, .NET için bir .docx dosyasına gömülü web uzantısı (Office Add-in) görev bölmelerini — bir belgenin bir Office Add-in ile ilişkilendirilmesini ve belge verilerine bağlanmasını sağlayan meta verileri — Document.WebExtensionTaskPanes ve TaskPane/WebExtension nesne modeli aracılığıyla okuyabilir ve değiştirebilir.
Görev Bölmeleri
Document.WebExtensionTaskPanes, TaskPane nesnelerinin bir TaskPaneCollectionini döndürür. Her TaskPane, bir add-in’in bölmesinin nerede ve nasıl yerleştirildiğini tanımlar: DockState (bir TaskPaneDockState Right veya Left), Row, Width, IsLocked ve IsVisible, ayrıca add-in’e kendisine bağlanan bir WebExtension özelliği.
Web Uzantısı Kimliği ve Referansları
WebExtension, add-in’i Id ve IsFrozen aracılığıyla tanımlar ve onun Reference özelliği (bir WebExtensionReference), Id, Version, Store ve StoreType (örneğin SPCatalog, Exchange veya FileSystem gibi bir WebExtensionStoreType) gibi add-in’in nereden dağıtıldığını açıklayan bilgileri ortaya çıkarır. AlternateReferences, bir WebExtensionReferenceCollection geri dönüş referanslarını tutar.
Bağlamalar ve Özel Özellikler
WebExtension.Bindings, WebExtensionBinding nesnelerinden oluşan bir WebExtensionBindingCollection olup, her biri new WebExtensionBinding(id, bindingType, appRef) olarak oluşturulur ve belge verisinin bir kısmını bir WebExtensionBindingType (Matrix, Table veya Text) aracılığıyla eklentiye bağlar. WebExtension.Properties, WebExtensionPropertyCollection basit WebExtensionProperty ad/değer çiftlerinden oluşur, new WebExtensionProperty(name, value) olarak oluşturulur ve tam bir bağlamaya gerek duymayan eklentiye özgü özelleştirilmiş ayarlar için kullanılır.
Koleksiyon Üyeliği
TaskPaneCollection, WebExtensionBindingCollection, WebExtensionPropertyCollection ve WebExtensionReferenceCollection aynı temel koleksiyon davranışını paylaşır: Add(item), Clear(), Remove(index), GetEnumerator() ve Count.
İpuçları ve En İyi Uygulamalar
TaskPane.IsVisible‘ı kontrol edin, bir eklentinin bölmesinin kullanıcıya şu anda gösterildiğini varsaymadan önce — bir görev bölmesi kaydedilmiş olabilir ancak gizli olabilir.WebExtensionReference.StoreType, bir eklentinin nereden alındığını (katalog, Exchange, dosya sistemi, kayıt defteri) söyler; birincil (first-party) eklentileri yan yüklü (sideloaded) eklentilerden ayırt etmek için kullanın.- Bağlamalar belirli bir
WebExtensionBindingType‘ı (matris, tablo veya düz metin) belge verisine bağlar — bir eklentinin ne biçimde veri beklediğini varsaymadan önce bağlama türünü kontrol edin. - Belge içinde başka bir yere saklamaya çalışmak yerine, basit ad/değer eklenti yapılandırma değerleri için
WebExtension.Properties‘ı kullanın.
Genel Sorunlar
| Sorun | Neden | Düzeltme |
|---|---|---|
Document.WebExtensionTaskPanes boş | Belgenin kayıtlı Office Eklentisi yok | Kaynak .docx‘ın gerçekten bir görev bölmesi gömüp gömmediğini doğrulayın, API’ın bozuk olduğunu varsaymadan önce |
| Eklentinin hangi mağazadan geldiği belirlenemiyor | StoreType kontrol edilmedi | Tam resmi görmek için WebExtensionReference.StoreType ile Store‘i birlikte okuyun |
| Bağlama verileri beklentilerle eşleşmiyor | Bağlama türü eşleşmemesi | Bağlı verileri tüketmeden önce WebExtensionBinding.BindingType (Matrix, Table, Text) kontrol edin |
FAQ
Bir belgede kayıtlı tüm Office Eklentilerini nasıl bulabilirim?
Sıralayın Document.WebExtensionTaskPanes (a TaskPaneCollection); her TaskPane.WebExtension size eklentinin kimliğini ve yapılandırmasını verir.
Bu API ile yeni bir web uzantısı bağlamı ya da özelliği ekleyebilir miyim?
Evet — koleksiyonlar (WebExtensionBindingCollection, WebExtensionPropertyCollection, vb.) Add() destekler, böylece mevcut bir WebExtension‘e yeni WebExtensionBinding/WebExtensionProperty nesneleri oluşturup ekleyebilirsiniz.
WebExtensionBinding aslında neyi bağlar?
Belgenin verisinin bir kısmını eklentiye bağlar, o verinin şeklini tanımlamak için bir WebExtensionBindingType (Matrix, Table veya Text) kullanır.
Belge içinde depolanan özel eklenti ayarlarını nasıl okurum?
Iterate WebExtension.Properties (bir WebExtensionPropertyCollection); her WebExtensionProperty bir Name/Value çifti ortaya çıkar.
API Reference Özeti
| Sınıf / Metot | Açıklama |
|---|---|
Document.WebExtensionTaskPanes | Belgede kaydedilen görev bölmelerinin TaskPaneCollection |
TaskPane | Bir eklenti bölmesi: DockState, Row, Width, IsVisible, IsLocked, WebExtension |
WebExtension | Eklenti kimliği: Id, IsFrozen, Reference, Bindings, Properties |
WebExtensionReference | Eklenti kaynağı: Id, Version, Store, StoreType |
WebExtensionBinding | Belge verisini WebExtensionBindingType aracılığıyla eklentiye bağlar |
WebExtensionProperty | Özel eklenti ayarı, bir Name/Value çifti olarak |