الدرس الأول في Asp.net2 (شرح بيئة العمل)
--------------------------------------------------------------------------------
السلام عليكم
لم أرد التأخر عليكم بالذات بالدرس الأول للغتنا الجبارة ASP.NET
آمل أن تكونوا قد حملتم نسختكم من الويب ديفلوبر اكسبريس وسجلتوها ما مايكروسوفت مجانا أو الفيجوال استوديو
نسيت أن أخبركم في المرة الماضية أنني سأعطي الدورة مستخدما الفيجوال بيسك وليس السي شارب ولكن سأقوم بوضع كود بالسي شارب أيضا إن شاء الله
وذلك لأن لغة الفيجوال بيسك شائعة وهي أبسط للتعلم من السي شارب .
طبعا لا تتوجب الاحتراف في الفيجوال بيسك لأن الأمور بسيطة وأنا سأقوم بشرح كل شيء إن شاء الله فلا تحملوا هم البرمجة.
بدء العمل :
بعد تشغيل الويب ديفلوبر أو الفيجوال استوديو نذهب إلى ملف ثم جديد ثم تختار موقع.
نختار مكان حفظ المشروع واللغة المستخدمة وهي الفيجوال بيسك (لمبرمجي السي شارب بامكانهم اختيار لغتهم ) وأيضا كما في الصورة.
نلاحظ بدء إنشاء المشروع ثم ظهور هذه الواجهة المقسمة كالتالي :
1- منطقة العمل :
وفيها يتم إدراج الأدوات وترتيبها ووضع الصور والنصوص أو بمعنى آخر واجهة الصفحة
2- صندوق الأدوات :
وهو يحتوي على الأدوات اللازمة للعمل مثل الزر والقائمة المنسدلة وهم مقسم إلى أجزاء منها الأدوات العامة وأدوات التعامل مع قواعد البيانات وأدوات التحقق والملحقات والمزيد وإن شاء الله ستتعرفون على معظمها.
3- نافذة المشروع :
وهي تحتوي على محتويات المشروع من صفحات وفئات ومجلدات وباقي أنواع الملفات.
4- نافذة الخصائص :
لكل أداة أو لكل محتوى خصائص يمكن التحكم بها وتعديلها من هذه النافذة.
5- التحوبل ال Html وواجهة العمل.
6- الصفحات المفتوحة حاليا.
7- رؤية الكود الملحق الذي أدمجناه بالصفحة
8- إبدأ الخاصة بالوندوز .
9- بدء تنفيذ المشروع.
والآن سنقوم بعمل أول مشروع بسيط وهو عبارة عن صفحة بها زر وصندوق نص وأداة عنوان (ليبل)
وعند النقر على الزر سيتحول عنوان الليبل بنفس نص الصندوق النصي ( لا تقلقوا راح تفهموا كمان شوية ).
الآن سأقوم بإنشاء جدول وجعله في المنتصف من قائمة Layout ثم بعدها Insert Table
بالإمكان الضغط على تاب من الكيبورد لسطر جديد
ثم سأقوم بسحب وإفلات الآن زر وهو رقم 3 في الصورة
وليبل رقم 1
وصندوق نصي رقم 2 وسأقوم بترتيبها
ما الذي سيحدث
عند النقر على الزر سيتحول اسم الليبل إلى نفس النص المكتوب في صندوق النص وأيضا سيكتب في بداية الصفحة تم بنجاح
أما إذا كان الصندوق النص فارغ فإن عنوان الليبل سيكون" أنت لم تدخل نص" وسيكتب في أعلى الصفحة فشل.
الخطوات :
قم بالنقر في أي منطقة فارغة في منطقة العمل واكتب الكود التالي
كود :
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
'فقط السطرين اللدان في الأسفل يجب أن تدخلهم أنت أما الباقي فإن البرنامج سينشئهم
Button1.Text = "موافق"
Label1.Text = ""
End Sub
الذي قمنا بفعله هو التالي
في حدث بدء تنفيذ الصفحة فإنه سيجعل نص الزر " موافق " بدلا من Button
وأيضا سيجعل نص الليبل فارغ
طبعا في طريقة أخرى وأسهل وإن شاء اله سأشرحها في الدرس الثاني ( درس الخصائص )
ثم قم بالنقر المزدوج على الزر واكتب الكود التالي
كود:
Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
Label1.ForeColor = Drawing.Color.Red
If TextBox1.Text <> "" Then
Label1.Text = TextBox1.Text
Response.Write("تم بنجاح")
Else
Response.Write("فشل")
Label1.Text = "أنت لم تدخل نص"
End If
End Sub
ما الذي يفعله الكود ؟؟؟
طبعا انسوا السطر الأول
طبعا كل الأحداث تحصل عند النقر على الزر
السطر الثاني يتم تغيير لون خط الليبل إلى اللون الأحمر بدلا من الإفتراضي الأسود
ثم نشترط التالي
إذا كان الصندوق النصي غير فارغ فليعمل التالي
يحول عنوان الليبل إلى نفس نص الصندوق النصي
يكتب في بداية الصفحة تم بنجاح ( سأشرح إن شاء الله لاحقا ما هي Response)
وإلا ( أي إذا كان فارغ ) يحدث التالي
يصبح عنوان الليل "أنت لم تدخل نص"
وأيضا يكتب في بداية الصفحة "فشل"
الآن قم بتنفيذ المشروع إما باستخدام CTRL+F5 بدون أن يقوم بالتنقيح أو بالضغط على F5 لوحدها بالتنقيح أو عن طريق المثلث الأخضر في الصورة الثالثة رقم 9
وسنجرب عند ادخال نص وعند كونه فارغا.
ماذا يحدث خلف الكواليس :
عند النقر على الزر فإن المتصفح يرسل اسم الكائن الذي سبب الحدث ونوع الحدث واسم المتصفح ووووو الكثير من الأمور التي ترسل وسنسميها request
بمعنى لو نريد أن نعرف مثلا نوع المتصفح المرسل للصفحة ولأدواتها علينا بالكائن request بمعنى طلب
جرب الآن أن تضيف زر جديد وتكتب التالي عند النقر عليه
Response.Write(Request.Browser.Browser.ToString())
نعيد الفيلم من الأول
أنت ( المستخدم) تقوم بالنقر على الزر فيرسل المتصقح كائن من نوع request إلى السيرفر فيقوم السيرفر والموجوذ عليه الخادم IIS بالنظر إلى كود ال asp.net الموجود أصلا في حدث النقر ثم يقوم بترجمته إلى كود بناءا على ما المعطيات HTML ويرسله إلى المتصفح لكي يفهمه وتسمى بعملية الاستجابة response
طبعا المحترفين لن يعجبهم الأمر ولا المصطلحات ولكن أنا ذكرت أن شرحي مبسط كليا .
ما الذي يقوم بعمله الفيجوال استوديو
طبعا صفحة ال ASP.NET عبارة عن طفحة هتمل عادية وبها شوية اضافات بمفهومنا العادي وهي أوأدوات asp.net.
لننقر الآن على تاب source في رقم 5 بالصورة الثالثة من أعلى
ولننظر ماذا نرى
نرى ما يوفر علينا كتابته الفيجوال استوديو من كود xhtml و أدوات ASP.NET
وهذا لنا درس كامل عليه إن شاء الله وهو الدرس الثالث.
رابط الدرس
http://pharmarab.org/L1/FirstLesson.zip
طبعا لم أشرح الكثير ولكن هذا كبداية لكي ترتاحوا أنكم قمتم بإنشاء المشروع الأول لكم.
وإنشاء الله الدرس التالي سأقوم بشرح خصائص بعض الأدوات أو شرح أدوات التحقق .
يعني تقريبا كبداية لشرح الخصائص الجدية ASP.NET2
لأي تعديل أنتظر ردودكم وأسأل الله أن يجعله في ميزان حسناتي .
ادعو للشعب الفلسطيني بالنصر لأنني أعدل بالدرس الآن وقصفت بالقرب مني3 بيوت .
أخوكم خليل
من فلسطين