البرمجة باستخدام Visual Basic مقابل استخدام Visual C# في حلول Office

ينطبق على

تنطبق المعلومات الموجودة في هذا الموضوع فقط على أنواع المشاريع وإصدارات Microsoft Office التالية: لمزيد من المعلومات، راجع الميزات المتوفرة بواسطة تطبيقات Office و نوع المشروع.

نوع المشروع

  • مشروعات على مستوى المستند

  • مشروعات على مستوى التطبيق

إصدار Microsoft Office

  • نظام 2007 Microsoft Office

  • Microsoft Office 2010

يمكنك إنشاء حلول Office باستخدام إما Visual Basic أو Visual C#. و لأنه تم تصميم نماذج كائن Microsoft Office لاستخدامها مع Microsoft Visual Basic for Applications (VBA) ، يعمل مطورو Visual Basic مرتاحين مع الكائنات المعروضة بواسطة تطبيقات Microsoft Office. في Visual Studio 2010 ، يمكن لمطوري Visual C# استخدام أكثر الميزات التى يستخدمها مطوري Visual Basic لكن هناك بعض الحالات حيث يجب أن تكتب تعليمة برمجية إضافية لاستخدام نماذج كائن Office. هناك أيضاً بعض الاختلافات بين ميزات البرمجة الأساسية في تطوير Office و التعليمة البرمجية التي تمت إدارتها في Visual Basic و C#‎.

مفاتيح الفروق الأساسية بين Visual Basic و Visual C#‎

يعرض الجدول التالي الاختلافات الرئيسية بين Visual Basic و Visual C# في تطوير Office.

الميزة

الوصف

دعم Visual Basic

دعم Visual C#‎

المعلمات الاختيارية

تحتوي العديد من أساليب Microsoft Office علي ‏‫المعلمات التي ليست مطلوبة عند استدعاء الأسلوب. إذا لم يتم تمرير قيمة إلى المعلمة يتم استخدام قيمة افتراضية.

يدعم Visual Basic المعلمات الاختيارية.

يدعم Visual C# المعلمات الاختيارية في معظم الحالات. لمزيد من المعلومات، راجع المعلمات الاختيارية في حلول Office.

تمرير المعلمات حسب المرجع

المعلمات الاختيارية في معظم تجميعات التوافق الأساسي لـ Microsoft Office يمكن تمريرها حسب القيمة. ومع ذلك، في بعض تجميعات التوافق الأساسي، المعلمات الاختيارية التي تقبل أنواع المرجع يجب أن يتم تمريرها حسب المرجع.

للحصول على مزيد من المعلومات حول قيمة و نوع مرجع المعلمات، راجع وسيطات التمرير حسب القيمة وعن طريق المرجع (لـ Visual Basic) ثم تمرير معلمات (C# البرمجة الدليل).

غير مطلوب أي عمل إضافي لتمرير معلمات حسب المرجع. يقوم برنامج التحويل البرمجى بـ Visual Basic تلقائياً بتمرير المعلمات حسب المرجع عند الضرورة.

في معظم الحالات, يقوم مترجم Visual C# تلقائياً بتمرير المعلمات حسب المرجع عند الضرورة. لمزيد من المعلومات، راجع المعلمات الاختيارية في حلول Office.

خصائص ذات معلمات

بعض الخصائص تقبل معلمات و تعمل كدالات للقراءة فقط.

يدعم Visual Basic الخصائص التي تقبل المعلمات.

يدعم Visual C# الخصائص التي تقبل المعلمات.

ربط في وقت التشغيل

يتضمن الربط في وقت التشغيل تحديد خصائص الكائنات في وقت التشغيل بدلاً من تغيير النوع فى وقت التصميم إلى نوع الكائن.

ينفذ Visual Basic الربط وقت التشغيل عندما يكون Option Strict متوقفا. عندما يكون Option Strict قيد التشغيل, يجب عليك تحويل الكائنات بشكل صريح و استخدام الأنواع في مساحة الاسم System.Reflection للوصول إلى الأعضاء ذات الربط وقت التشغيل. لمزيد من المعلومات، راجع الربط فى وقت التشغيل في حلول Office.

يقوم Visual C# بأداء الربط وقت التشغيل في المشاريع التي تستهدف .NET Framework 4. في المشاريع التي تستهدف 3.5 .NET Framework يجب أن تحويل الكائنات بشكل صريح واستخدام الأنواع في مساحة الاسم System.Reflection للوصول إلى الأعضاء ذات الربط وقت التشغيل. لمزيد من المعلومات، راجع الربط فى وقت التشغيل في حلول Office.

مفاتيح الفروق الأساسية بين تطوير Office و التعليمة البرمجية المدارة

يعرض الجدول التالي الاختلافات الأساسية بين التطوير Office و التعليمة البرمجية المدارة التي تم كتابتها في Visual Basic أو Visual C#‎.

الميزة

الوصف

دعم Visual Basic و Visual C#‎

صفيف الفهارس

إلى تشغيل cusإلىmizations المستوى المستندات التي تم إنشاؤها باستخدام المكتب المطور إلى ols في ‏‫Visual Studio، أجهزة الكمبيوتر للمستخدم النهائي يجب أن يكون مثبت. إذا كانت هناك ملحقات تعليمات برمجية مُدارة، يحمل تطبيق VSTOEE.dll الذي يحمل VSTOLoader.dll. للمزيد من المعلومات، راجع صفائف (C# البرمجة الدليل) والصفائف في Visual Basic.

للوصول إلى العنصر الأول الخاص بمجموعة في نموذج كائن من تطبيق Microsoft Office ، استخدم فهرس 1 بدلاً من 0.

راجع أيضًا:

المهام

كيفية القيام بما يلي: استهداف تطبيقات Office عبر تجميعات توافق أساسي

الربط فى وقت التشغيل في حلول Office

المرجع

انعكاس (C# و Visual Basic)

المبادئ

كتابة التعليمات البرمجية في حلول Office

المعلمات الاختيارية في حلول Office