تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
كيف تقوم بإضافة إجراءاتك الخاصة إلى مجال الأسماء My- توسيع مجال الأسماء My في VB2005
#1
كاتب الموضوع : samerselo

لإضافة فئة جديدة إلى مجال الأسماء My كل ما عليك عمله هو إضافة كتلة Namespace تحمل اسم My فإذا أردنا إضافة فئة جديدة إلى مجال الأسماء My مثلا TestClass يحتوي على دالة JustForTest سنقوم ببساطة بكتابة الكود التالي

كود :
Namespace My

Public Class TestClass

Public Shared Function JustForTest(ByVal SomeText As String) As String
Return SomeText & ", " & Now.ToString("dddd")
End Function

End Class

End Namespace
و أصبح الآن بإمكاننا استخدامه كبقية الفئات المودودة سابقا في مجال الأسماء My

كود :
TextBox2.Text = My.TestClass.JustForTest(TextBox1.Text)
ولكن تجدر الملاحظة هنا أن الدالات التي ستستخدمها هنا يجب أن تكون Shared أو أن تقوم بتضمينها في Module بدلا من Class وذلك لأن جميع الدالات والخصائص الموجود في Module تكون Shared دائما.

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

كود :
Namespace My

' Extend My.Application Class
Partial Friend Class MyApplication

Public Function AppTest() As String
Return "For Test Purposes"
End Function

End Class


End Namespace
واستخدامه أيضا كبقية الفئات الموجودة سابقا

كود :
TextBox3.Text = My.Application.AppTest
وبهذا يصبح الكود الكامل لمثالنا هنا كالتالي

كود :
Public Class Form1

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles

Button1.Click
TextBox2.Text = My.TestClass.JustForTest(TextBox1.Text)
TextBox3.Text = My.Application.AppTest
End Sub

End Class

Namespace My

' Add New Class
Public Class TestClass

Public Shared Function JustForTest(ByVal SomeText As String) As String
Return SomeText & ", " & Now.ToString("dddd dd/MM/yyyy")
End Function

End Class

' Extend My.Application Class
Partial Friend Class MyApplication

Public Function AppTest() As String
Return "For Test Purposes"
End Function

End Class


End Namespace
ويمكنك الآن توسيع مجال الأسماء My بحسب حاجتك وهذا ليس محدودا بتطبيق معين حيث يمكنك إنشاء مكتبة Class Library خاصة بك تضيف بعض الأشياء لمجال الأسماء My واستخدامها في تطبيقاتك وذلك بإضافة مرجع لهذه المكتبة من داخل التطبيق
}}}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  مقارنة الكلمات و الأسماء العربية برمجيا silverlight 4 470 20-12-15, 08:34 PM
آخر رد: silverlight
  كيف تستطيع إطلاق أحداثك الخاصة- RaiseEvent Tutorial RaggiTech 0 242 05-10-12, 01:51 AM
آخر رد: RaggiTech
  مكتبة التوافقية الخاصة بفيجول بايزيك 6.0 RaggiTech 0 433 05-10-12, 01:34 AM
آخر رد: RaggiTech
  معلومة -- كيف تقوم بطباعة الـ RichTextBox كما هو منسق RaggiTech 0 517 04-10-12, 11:53 AM
آخر رد: RaggiTech
  مجال الاسماء My{} RaggiTech 0 287 04-10-12, 10:14 AM
آخر رد: RaggiTech
  دروس متعلمة من خمس سنوات من العمل في مجال الحماية RaggiTech 3 561 03-10-12, 02:28 PM
آخر رد: RaggiTech
  توسيع مجال الأسماء My باستخدام My Extensibility RaggiTech 5 773 03-10-12, 12:26 PM
آخر رد: RaggiTech
  تعلم كيف تقوم بعمليات توضيح و تمويه و زخرفة و توهج الصور RaggiTech 0 446 03-10-12, 10:02 AM
آخر رد: RaggiTech
  تعلم كيف تقوم بتهيئة فلاشتك RaggiTech 0 368 03-10-12, 09:56 AM
آخر رد: RaggiTech

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم