تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
تطوير الكونترول Designers الجزء الرابع
#1
كاتب الموضوع : silverlight

الموضوع : تطوير الكزنترول Designers
اللغة المستخدمة: الفيجوال بيسك
التطبيق: فيجوال استوديو 2005 و 2008
المستوي: التقييم متروك للقارئ
إعداد: مهندس / عمر أمين إبراهيم

ماذا تعني كلمة Designers ؟

هذا سؤال مهم جدا نسأله لأنفسنا وطبعا ليس المقصود هنا أن نترجم المعني من الإنجليزية الي العربية عموما لكي نجيب علي السؤال فالإجابة ستكون كالأتي إن Designers هي همزة الوصل بين المبرمج و الكونترول بأنواعه المختلفة في مرحلة Design Time.
بشكل عام Designers يمكن استخدامها مع Windows Forms وأيضا مع Web UI

ما هي أنواع Designers ؟

هناك العديد من Designers و هي مرتبه حسب أنواعها كالأتي

ComponentDesigner Class
ControlDesigner Class
ComponentDocumentDesigner Class
ParentControlDesigner Class
ScrollableControlDesigner Class
DocumentDesigner Class

وعموما كل هذه الكلاس Classes مشتقه من بعضها البعض والأصل لجميعها هو ComponentDesigner الذي يتكون من مجموعه من Interfaces التي تمثل أصل Designers Classes

أصل Designer ؟

جميع أنواع Designers المعروفة لنا جاءت من مكان واحد فقط ألا وهو مجموعه من Interfaces وهي كالأتي

IDesigner Interface
IDisposal Interface
IDesgnerFilter Interface
ITreeDesigner Interface
IComponentInitializer Interface
IRootDesigner Interface
IToolboxUser Interface
ITypeDescriptorFilterServices Interface

ولمزيد من التفاصيل يمكن الرجوع الي Namespaces التالية
System.Windows.Forms.Design Namespace
System.ComponentModel.Design Namespace

نبذة عن الكونترول

كما تعلمون إن الكونترول له أنواع مختلفة كثيرة وكلها مشتقه من Control Class ومنها علي سبيل المثال الأنواع التالية

Control Class وهذا النوع هو ما يختص به موضوعنا عن تطوير الكونترول وهو مشتق من Component Class الذي بدوره مشتق من MarshalByRefObject Class
ScrollableControl Class وهو مشتق من Control Class
ContainerControl Class وهو مشتق ScrollableControl
ListControl Class وهو أيضا مشتق من Control Class وهذا النوع من الكونترول هو الذي تم استخدامه في بناء الكومبو بوكس ComboBox Class و أيضا ListBox Class

الفارق بين هذه Control Classes المختلفة انه قد تم عمل Implementation لبعض Interfaces أي انه قد أضيفت بعض Interfaces وبناء عليه يتم تخليق Control Class باسم جديد فقط وطبعا أنت أيضا عزيزي القارئ يمكنك أن تفعل نفس الشيء يعني ببساطه تقدر تخلق أي كلاس بأي اسم تريد وتضيف له مواصفات جديدة عن طريق استخدام Interfaces أو يدون Interfaces
أعتقد الأن أدركت عزيزي القارئ لماذا تطرقنا لمناقشة موضوع Interfaces ولإعطاء مثال عام عن موضوعنا انظر الي الكود الموجود أدناه. وفي هذا المثال قمت باستخدام Attribute وهو عبارة عن System.Windows.Forms.Design. DocumentDesigner وهذا يوضح كيفية اسخدام Designers الموجوده في System بدون اضافة اي Custom Designers واستعمالها في نصميم الكونترول.


كود :
Imports System.ComponentModel
Imports System.ComponentModel.Design

<Designer("System.Windows.Forms.Design.DocumentDesigner, System.Windows.Forms.Design.DLL", _
GetType(IRootDesigner)), *********ategory("Form")> _
Public Class MyControl

Inherits ContainerControl
Implements IArab

' Insert code here.

Public Property myProperty() As System.Drawing.Color Implements IArab.myProperty
Get

End Get
Set(ByVal value As System.Drawing.Color)

End Set
End Property
End Class 'MyForm


Public Interface IArab
Property myProperty() As Color

End Interface
}}}
تم الشكر بواسطة:


الردود في هذا الموضوع
تطوير الكونترول Designers الجزء الرابع - بواسطة Raggi Tech - 03-10-12, 09:10 AM

المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  الجزء الثالث من:كيف تجعل الـ Text Box ذكي!يترجم العمليات الحسابية ويخرج الناتج (الأقواس المتعددة) !! أنس محمود 10 8,395 19-07-22, 12:15 AM
آخر رد: StartLight4000
  حساب قيمة معادلة(اقصد صيغة دون مجاهيل) مكتوبة بالتكست : الجزء الخامس والاخير محمد شريقي 4 4,830 23-02-18, 10:44 PM
آخر رد: العواد الصغير
  مقدمة إلي إخفاء المعلومات - الجزء الأول silverlight 5 4,508 07-01-17, 10:44 PM
آخر رد: Basil Abdallah
  مقدمة إلي إخفاء المعلومات - الجزء الثاني silverlight 1 3,210 06-01-17, 11:52 AM
آخر رد: silverlight
  إيجاد جميع الكونترول الموجودة في الفورم Recursively Find All Controls in Form silverlight 0 3,271 26-05-15, 12:31 AM
آخر رد: silverlight
  تحويل الفيديو في برامجك-الجزء الثاني( إصلاح للمشاكل + تعديل للروابط + توضيح للأمر ) RaggiTech 1 3,512 10-12-14, 06:37 PM
آخر رد: abulayth
  الجزء الثاني من:كيف تجعل الـ Text Box ذكي!يترجم العمليات الحسابية ويخرج الناتج ( العمليات المتعددة)! أنس محمود 0 3,004 22-02-13, 12:39 AM
آخر رد: أنس محمود
  مقال- تطوير الكونترول Property Attributes الجزء الثالث RaggiTech 0 2,474 06-10-12, 12:20 AM
آخر رد: RaggiTech
  الجزء الثاني - تطوير الكونترول Interfaces RaggiTech 0 2,458 06-10-12, 12:19 AM
آخر رد: RaggiTech
  مقال- تطوير الكونترول Skin Control RaggiTech 0 2,632 06-10-12, 12:08 AM
آخر رد: RaggiTech

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


يقوم بقرائة الموضوع: