منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
[كود] Line Control - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb)
+-- قسم : قسم لغة الفيجوال بيسك VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=182)
+--- قسم : قسم مقالات VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=184)
+--- الموضوع : [كود] Line Control (/showthread.php?tid=14391)



Line Control - silverlight - 14-01-16

السلام عليكم ورحمة الله و بركاته

في هذا الموضوع سوف نبني كونترول بسيط و الغالبية منكم يتذكرون LineControl القديم الذي كان موجودا في النسخ القديمة من الفيجوال بيسك 6 و ما قبله تقريبا علي ما اتذكر


و لقد كتبت هذا الموضوع فقط لتأكيد أننا من الممكن أن نستخدم Action Delegates في اطلاق حدث بدون استخدام اي EventHandler

والهدف هنا هو تأكيد الفكرة التي تم طرحها في اللينك التالي

Generic Delegates - Func and Action

و علي العموم الكونترول شكله جيد و مناسب للإستخدام في اي من برامجكم

صفات الكونترول :


LineColor و هي صفة عبارة عن لون
تستطيع منها تغيير اللون المستخدم في عملية رسم الخط

LinePosition وهي صفة عبارة عن Enumeration
تستطيع منها تحديد مكان رسم الخط إما الي الأسفل او في المنتصف أو في القمة


و لمستخدمي نسخةالدوت نت 3.5 فيما فوق يجب عليهم استخدام النسخة V1.1 الموجودة بالمرفقات

أما مستخدمي الدوت نت الاقل من نسخة 3.5 يجب عليهم استخدام النسخة V1.0 الموجودة بالمرفقات

الفارق بين النسختين يظهر في الكود التالي

حيث هنا يتم هنا اطلاق الحدث باستخدام Action Delegate



PHP كود :
   <Browsable(True)>
 
   <Category("Cairo")>
 
   <DefaultValue(GetType(LinePosition), "Middle")>
 
   Public Property LinePosition As LinePosition
        Get
            Return _position
        End Get
        Set
(value As LinePosition)
 
           If _position <> value Then
                Dim positionAction 
As Action(Of LinePositionChangedEventArgs) = Sub()
 
                                                                                   _position value
                                                                                    Invalidate
()
 
                                                                               End Sub
                Dim args 
As New LinePositionChangedEventArgs(_position)
 
               positionAction(args)
 
           End If
 
       End Set
    End Property 

الكود هنا هو نفس الكود اعلاه ولكن يتم اطلاق حدث بالاسلوب التقليدي


PHP كود :
   <Browsable(True)>
 
   <Category("Cairo")>
 
   <DefaultValue(GetType(LinePosition), "Middle")>
 
   Public Property LinePosition As LinePosition
        Get
            Return _position
        End Get
        Set
(value As LinePosition)
 
           If _position <> value Then
                _position 
value
                Dim args 
As New LinePositionChangedEventArgs(_position)
 
               OnPositionchanged(args)
 
           End If
 
       End Set
    End Property 

الكود مكتوب باستخدام الفيجوال استوديو 2015


تقبلو تحياتي


RE: Line Control - egbest2 - 29-05-19

شكرا لك اخى الكريم 





شكرا جدا  على الموضوع الاكثر من رائع










_______________________________________________
التسامح الحق لا يستلزم نسيان الماضي بالكامل..

سينما كلوب
ايجي بست
شاهد فور يو

سيرا اون لاين


مشاهدة فيلم