مشاركة عبر


إدارة أجزاء مهام مخصصة في تطبيقات Windows متعددة

ينطبق على

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

نوع المشروع

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

تطبيق Microsoft Office

  • Excel 2007 و Excel 2010

  • InfoPath 2007 وInfoPath 2010

  • Outlook 2007 و Outlook 2010

  • PowerPoint 2007 و برنامج PowerPoint 2010

  • Word 2007 و Word 2010

عند إنشاء جزء مهام مخصص في تطبيق يستخدم عدة نوافذ لعرض المستندات والعناصر الأخرى, تحتاج إلى اتخاذ خطوات إضافية للتأكد من أن جزء المهام مرئي عندما يتوقع المستخدم أن يكون كذلك.

أجزاء المهام المخصصة في كافة التطبيقات مرتبطة مع نافذة إطار المستند، التي تقدم طريقة عرض مستند أو عنصر للمستخدم. يكون جزء المهام مرئياً فقط عندما تكون النافذة المقترنة مرئية. ومع ذلك، لا تستخدم كافة التطبيقات نوافذ إطار المستند بنفس الطريقة.

مجموعات التطبيقات التالية لها متطلبات تطوير مختلفة:

  • Outlook

  • Word و InfoPath

  • Excel و PowerPoint

ارتباط إلى فيديو للحصول على عرض فيديو توضيحي ذي صلة، راجع كيف يمكنني القيام بما يلي: إدارة أجزاء المهام في وظائف Word الإضافية ؟.

Outlook

عند إنشاء جزء مهام مخصص لـ Outlook، جزء المهام المخصص يكون مقترناً بنافذة المستكشف أو المتفحص المعينة. المستكشفات هى نوافذ تعرض محتويات المجلد و المتفحصات هي نوافذ تعرض أحد العناصر مثل رسالة بريد إلكتروني أو مهمة.

إذا كنت ترغب في عرض جزء مهام مخصص بأكثر من نوافذ مستكشف أو متفحص، تحتاج إلى إنشاء مثيل جديد من جزء المهام المخصص عند فتح نوافذ المستكشف أو المتفحص. للقيام بذلك، قم بمعالجة الحدث الذى تم رفعه عند إنشاء نافذة مستكشف أو متفحص, ثم قم بإنشاء جزء المهام في معالج الأحداث. يمكنك أيضاً معالجة أحداث المستكشف و المتفحص لإخفاء أو عرض المهام استنادًا إلى أى نافذة تكون مرئية.

لإقران جزء المهام مع مستكشف أو متفحص معين، استخدم الأسلوب CustomTaskPaneCollection.Add(UserControl, String, Object) لإنشاء جزء المهام و مرر الكائن Explorer أو Inspector إلى المعلمة window. لمزيد من المعلومات حول أجزاء المهام المخصصة راجع نظرة عامة على أجزاء الإجراءات المخصصة.

للحصول على إرشادات تفصيلية توضح كيفية إنشاء جزء مهام لكل رسالة بريد إلكتروني مفتوحة, راجع الإرشادات التفصيلية: عرض أجزاء المهام المخصصة مع رسائل البريد الإلكتروني في Outlook.

أحداث Outlook

لمراقبة حالة مستكشف Windows, يمكنك معالجة الأحداث التالية المتعلقة بالمستكشف :

لمراقبة حالة مستكشف Windows, يمكنك معالجة الأحداث التالية المتعلقة بالمستكشف:

منع مثيلات متعددة من جزء مهام مخصص في Outlook

لمنع نوافذ Outlook من عرض مثيلات متعددة من جزء مهام مخصص، قم صراحة بإزالة جزء المهام المخصص من مجموعة CustomTaskPanes للفئة ThisAddIn عند إغلاق كل نافذة. قم باستدعاء الأسلوب Remove في أحد الأحداث التي يتم رفعها عند إغلاق نافذة مثل ExplorerEvents_10_Event.Close أو InspectorEvents_10_Event.Close.

إذا لم تقم بإزالة جزء المهام المخصص بشكل صريح ، قد تعرض نوافذ Outlook مثيلات متعددة من جزء المهام المخصص. Outlook أحياناً يلقى بالنوافذ فى سلة المحذوفات، و تحتفط النوافذ الملقاة فى سلة المحذوفات بمراجع إلى أي جزء مهام مخصص تم إرفاقه بها.

Word و InfoPath

تعرض Word و InfoPath كل مستند في نافذة إطار مستند مختلفة. عند إنشاء جزء مهام مخصص لهذه التطبيقات, يقترن جزء المهام المخصص بالمستند المعين فقط. في حالة قيام المستخدم بفتح مستند مختلف،يتم اخفاء جزء المهام المخصص إلى أن يعود المستند السابق مرئياً مرة أخرى.

إذا كنت ترغب في عرض جزء مهام مخصص بمستندات متعددة، قم بإنشاء مثيل جديد من جزء مهام مخصص عند قيام المستخدم بإنشاء مستند جديد أو فتح مستند موجود. للقيام بدلك,قم بمعالجة أحداث التى يتم رفعها عند إنشاء مستند أو فتحه ثم قم بإنشاء جزء المهام في معالجات الأحداث. يمكنك أيضاً معالجة أحداث المستندات لإخفاء أو عرض أجزاء المهام استنادًا إلى أى مستند مرئي.

لربط جزء المهام بنافذة مستند معين، استخدم CustomTaskPaneCollection.Add(UserControl, String, Object) لإنشاء جزء مهام و مرر المعلمة Microsoft.Office.Interop.Word.Window (لـ Word) أو WindowObject (لـ InfoPath) إلى window.

لمزيد من المعلومات، راجع إدارة إجزاء مهام في مستندات Word و InfoPath متعددة.

أحداث Word

لمراقبة حالة نوافذ المستند في Word، يمكنك معالجة الأحداث التالية:

أحداث InfoPath

لمراقبة حالة نوافذ المستند في InfoPath، يمكنك معالجة الأحداث التالية:

  • NewXDocument()

  • WindowActivate()

  • WindowDeactivate()

  • XDocumentBeforeClose()

  • XDocumentOpen()

Excel و PowerPoint

يقوم PowerPoint وExcel بإنشاء نافذة إطار مستند واحدة لكافة المستندات (أي، للمصنفات و العروض التقديمية). عند إنشاء جزء مهام مخصص في هذه التطبيقات، جزء المهام متوفر لكل مستند مفتوح في التطبيق. ليس هناك أي عمل إضافي مطلوب منك للتأكد من عرض جزء المهام لكل مستند.

ومع ذلك، استناداً إلى أي مستند يكون نشطاً، قد تحتاج إلى إخفاء أو عرض جزء المهام أو قد تحتاج إلى عرض عناصر أو بيانات واجهة مستخدم مختلفة في جزء المهام. للقيام بدلك, قم بمعالجة الأحداث التى يتم رفعها عند إنشاء مستند أو فتحه أو تنشيطه، ثم قم بتحديث جزء المهام في معالجات الأحداث.

أحداث Excel

لمراقبة حالة المصنفات في Excel يمكنك معالجة الأحداث التالية:

أحداث PowerPoint

لمراقبة حالة العروض التقديمية في PowerPoint يمكنك معالجة الأحداث التالية:

  • Microsoft.Office.Interop.PowerPoint.EApplication_Event.AfterNewPresentation

  • Microsoft.Office.Interop.PowerPoint.EApplication_Event.AfterPresentationOpen

  • Microsoft.Office.Interop.PowerPoint.EApplication_Event.NewPresentation

  • Microsoft.Office.Interop.PowerPoint.EApplication_Event.PresentationOpen

  • Microsoft.Office.Interop.PowerPoint.EApplication_Event.WindowActivate

  • Microsoft.Office.Interop.PowerPoint.EApplication_Event.WindowDeactivate

المثال

WorkbookActivateقم بإنشاء واجهة جديدة باسم، وذلك بتعديل التعريففئة حيث أنه يطبقواجهة. SalesData.xlsيفتح أيضاISheet1.cs ملف في محرر تعليمات برمجية. لتشغيل هذا المثال قم باستبدال معالج الحدث ThisAddIn_Startup الافتراضي في الفئة ThisAddIn بالتعليمات البرمجية التالية. يفترض هذا المثال أن هذا المشروع يتضمن UserControl باسم UserControl1.

Dim myUserControl As UserControl1
Dim myCustomTaskPane As Microsoft.Office.Tools.CustomTaskPane

Private Sub ThisAddIn_Startup(ByVal sender As Object, ByVal e As System.EventArgs) _
Handles Me.Startup
    myUserControl = New UserControl1()
    myCustomTaskPane = Me.CustomTaskPanes.Add(myUserControl, "Sales Task Pane")
End Sub

Private Sub Application_WorkbookActivate(ByVal Wb As Excel.Workbook) _
    Handles Application.WorkbookActivate

    If Wb.Name = "SalesData.xlsx" Then
        myCustomTaskPane.Visible = True
    Else
        myCustomTaskPane.Visible = False
    End If
End Sub
private UserControl1 myUserControl;
private Microsoft.Office.Tools.CustomTaskPane myCustomTaskPane;

private void ThisAddIn_Startup(object sender, System.EventArgs e)
{
    this.Application.WorkbookActivate += new Excel.AppEvents_WorkbookActivateEventHandler(
        Application_WorkbookActivate);

    myUserControl = new UserControl1();
    myCustomTaskPane = this.CustomTaskPanes.Add(myUserControl, "Sales Task Pane");
}

void Application_WorkbookActivate(Excel.Workbook Wb)
{
    if (Wb.Name == "SalesData.xlsx")
        myCustomTaskPane.Visible = true;
    else
        myCustomTaskPane.Visible = false;
}

راجع أيضًا:

المهام

كيفية القيام بما يلي: إضافة جزء مهام مخصص إلى تطبيق ما

الإرشادات التفصيلية: عرض أجزاء المهام المخصصة مع رسائل البريد الإلكتروني في Outlook

كيفية القيام بما يلي: عرض أجزاء مهام مخصصة مع رسائل بريد إلكتروني في Outlook

الإرشادات التفصيلية: مزامنة جزء المهام المخصص مع زر الشريط

موارد أخرى

نظرة عامة على أجزاء الإجراءات المخصصة

إدارة أجزاء المهام في مستندات InfoPath و Word متعددة