منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
إضافة وصلات ويب وبريد الكتروني لنافذتك - نسخة قابلة للطباعة

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



إضافة وصلات ويب وبريد الكتروني لنافذتك - RaggiTech - 02-10-12

كاتب الموضوع : samerselo

أداة LinkLabel
إضافة وصلات ويب وبريد الكتروني لنافذتك

تمكنك هذه الأداة من إضافة وصلات ويب لمشروعك كما يمكنك تحديد وصلة أو أكثر ضمن النص الظاهر فيه
• ضع LinkLabel على النافذة حتى نقوم بالتجريب
1. اضبط الخاصية Text لـ LinkLabel إلى أي عنوان موقع مثلا www.vb4arab.com ثم انتقل إلى محرر الكود وفي الخاصية LinkClicked للتحكم LinkLabel اكتب الكود التالي حيث استخدمنا Process.Start بالصيغة
Process.Start (String) التي تقوم بتشغيل برنامج أو وثيقة حسب السلسلة النصية الممررة لها لفتح الموقع المراد

كود :
Process.Start(Me.LinkLabel1.Text)
2. ولتحديد وصلة لإرسال بريد الكتروني اضبط الخاصية Text إلى أي عنوان بريد الكتروني تريد مثلا "someone@yahoo.com" وعدل الكود السابق إلى

كود :
Process.Start("mailto:" & Me.LinkLabel1.Text)
3. كما يمكن إضافة العديد من الوصلات في نفس التحكم وذلك بجعل القيمتان Start و Length المرتبطتين بالخاصية LinkArea إلى الصفر وإضافة الوصلات إلى الخاصية Links برمجيا حيث نستخدم الطريقة Add للخاصية Links للتحكم LinkLabel لإضافة الوصلات للتحكم حيث تملك الطريقة Add ثلاث طرائق Overloaded وهي
• إضافة وصلة من نوع LinkLabel.Link

كود :
LinkLabel.Links.Add (LinkLabel.Link)
• إضافة وصلة بتحديد مجال محارف من النص الظاهر في التحكم

كود :
LinkLabel.Links.Add (Int32, Int32)
• إضافة وصلة بتحديد مجال محارف من النص الظاهر في التحكم كاسم للوصلة وتمرير عنوان الوصلة كمتغير Object

كود :
LinkLabel.Links.Add (Int32, Int32, Object)
4. اضبط الخاصية text للتحكم إلى Try at Yahoo or at Arab team or Email me و ضع القيم Start و Length المرتبطتين بالخاصية LinkArea كلاهما إلى الصفر ثم في الحدث Load للنموذج ضع الكود التالي حيث استخدمنا الصيغة الأخيرة للطريقة Add

كود :
With Me.LinkLabel1
.Links.Add(7, 5, "www.yahoo.com")
.Links.Add(19, 9, "www.arabteam2000.com")
.Links.Add(32, 8, "mailto:someone@yahoo.com")
End With
5. الآن لتشغيل كل وصلة عند النقر عليها غير الكود الموجود ضمن الحدث LinkClicked للتحكم LinkLabel إلى

كود :
Dim Url As String = CStr(e.Link.LinkData)
Process.Start(Url)
وهنا لم نعد نستخدم الخاصية Text للتحكم كما فعلنا في المثال الأول بل نستخدم خصائص البارامتر e الذي هو من النوع LinkLabelLinkClickedEventArgs للحصول على عنوان الموقع أو البريد الالكتروني الذي نريده وذلك من خلال الخاصية e.Link.LinkData التي هي من النوع Object حيث نقوم بتحويلها إلى String قبل تمريرها لوظيفة Process.start كقيمة نصية