ملحقات الويب

ملحقات الويب

ملحقات الويب

يوضح هذا الدليل كيفية قراءة وتعديل بيانات تعريف لوحة مهام إضافات Office المدمجة في ملف .docx باستخدام Aspose.Words FOSS لـ .NET. يمكن لـ Aspose.Words FOSS لـ .NET قراءة وتعديل ملحق الويب (إضافة Office) للوحات المهام المدمجة في ملف .docx — البيانات التعريفية التي تربط مستندًا بإضافة Office وتربطه ببيانات المستند — عبر Document.WebExtensionTaskPanes ونموذج الكائنات TaskPane/WebExtension.


لوحات المهام

يقوم Document.WebExtensionTaskPanes بإرجاع TaskPaneCollection من كائنات TaskPane. كل TaskPane يصف مكان وكيفية تثبيت لوحة الإضافة: DockState (‏TaskPaneDockState من Right أو Left)، Row، Width، IsLocked، وIsVisible، بالإضافة إلى خاصية WebExtension التي تربط بالإضافة نفسها.


هوية ملحق الويب والمراجع

يقوم WebExtension بتحديد الإضافة عبر Id وIsFrozen، وتكشف خاصية Reference الخاصة به (‏WebExtensionReference) عن Id وVersion وStore وStoreType (‏WebExtensionStoreType مثل SPCatalog وExchange أو FileSystem) التي تصف مصدر توزيع الإضافة. يحتوي AlternateReferences على WebExtensionReferenceCollection من المراجع الاحتياطية.


الارتباطات والخصائص المخصصة

WebExtension.Bindings هو WebExtensionBindingCollection من كائنات WebExtensionBinding، كل منها مُنشأ كـ new WebExtensionBinding(id, bindingType, appRef) ويربط جزءًا من بيانات المستند بالإضافة عبر WebExtensionBindingType (Matrix، Table أو Text). WebExtension.Properties هو WebExtensionPropertyCollection من أزواج الاسم/القيمة البسيطة WebExtensionProperty، مُنشأ كـ new WebExtensionProperty(name, value)، يُستخدم لإعدادات مخصصة خاصة بالإضافة لا تستدعي ربطًا كاملاً.


عضوية المجموعة

يتشارك TaskPaneCollection وWebExtensionBindingCollection وWebExtensionPropertyCollection وWebExtensionReferenceCollection جميعًا نفس سلوك التجميع الأساسي: Add(item)، Clear()، Remove(index)، GetEnumerator()، وCount.


نصائح وأفضل الممارسات

  • تحقق من TaskPane.IsVisible قبل الافتراض أن لوحة الإضافة معروضة حاليًا للمستخدم — يمكن تسجيل لوحة مهام ولكن تكون مخفية.
  • WebExtensionReference.StoreType يخبرك من أين تم الحصول على الإضافة (كتالوج، Exchange، نظام الملفات، السجل)؛ استخدمه للتمييز بين الإضافات الأصلية وتلك التي تم تحميلها بشكل جانبي.
  • الارتباطات تربط WebExtensionBindingType محدد (مصفوفة، جدول، أو نص عادي) ببيانات المستند — تحقق من نوع الارتباط قبل الافتراض ما هو شكل البيانات التي تتوقعها الإضافة.
  • استخدم WebExtension.Properties لقيم تكوين الإضافة البسيطة من نوع الاسم/القيمة بدلاً من محاولة تخزينها في مكان آخر داخل المستند.

المشكلات الشائعة

المشكلةالسببالإصلاح
Document.WebExtensionTaskPanes فارغالمستند لا يحتوي على أي إضافات Office مسجلةتحقق من أن المصدر .docx يضم فعليًا لوحة مهام قبل افتراض أن API معطوب
لا يمكن معرفة المتجر الذي جاءت منه الإضافةStoreType غير مُفحصاقرأ WebExtensionReference.StoreType جنبًا إلى جنب مع Store للحصول على الصورة الكاملة
بيانات الربط لا تتطابق مع التوقعاتعدم توافق نوع الربطتحقق من WebExtensionBinding.BindingType (Matrix, Table, Text) قبل استهلاك البيانات المرتبطة

FAQ

كيف يمكنني العثور على جميع الإضافات الخاصة بـ Office المسجلة في مستند؟

عدّ Document.WebExtensionTaskPanes (a TaskPaneCollection); كل TaskPane.WebExtension يمنحك هوية الإضافة وتكوينها.

هل يمكنني إضافة ربط امتداد ويب جديد أو خاصية باستخدام هذا API؟

نعم — المجموعات (WebExtensionBindingCollection, WebExtensionPropertyCollection, إلخ) تدعم Add()، لذا يمكنك إنشاء وإضافة كائنات WebExtensionBinding/WebExtensionProperty جديدة إلى WebExtension موجود.

ماذا يقوم WebExtensionBinding بربطه فعليًا؟

إنه يربط جزءًا من بيانات المستند بالإضافة، باستخدام WebExtensionBindingType (Matrix، Table أو Text) لوصف بنية تلك البيانات.

كيف يمكنني قراءة إعدادات الإضافة المخصصة المخزنة في المستند؟

تكرار WebExtension.Properties (a WebExtensionPropertyCollection); كل WebExtensionProperty يعرض زوج Name/Value.


API Reference ملخص

الصنف / الطريقةوصف
Document.WebExtensionTaskPanesTaskPaneCollection من ألواح المهام المسجلة في المستند
TaskPaneلوحة إضافة واحدة: DockState, Row, Width, IsVisible, IsLocked, WebExtension
WebExtensionهوية الإضافة: Id, IsFrozen, Reference, Bindings, Properties
WebExtensionReferenceمصدر الإضافة: Id, Version, Store, StoreType
WebExtensionBindingيربط بيانات المستند بالإضافة عبر WebExtensionBindingType
WebExtensionPropertyإعداد مخصص للإضافة كزوج Name/Value

انظر أيضاً

 العربية