سوالف اندرويد




العودة   سوالف سوفت > سوالف برمجة المواقع وتطويرها > ASP و ASP.NET
التسجيل المدوّنات البحث مشاركات اليوم جعل الأقسام مقروءة

الرد على الموضوع
 
LinkBack أدوات الموضوع
مشرف قسم asp.net
#1  
الدرس الرابع في ASP.NET2 ( الجزء الثاني )

السلام عليكم

أمل أن تكونوا قد تمعنتم بالجزء الأول لأن اليوم حديثنا سيطول

سأتكلم اليوم إن شاء الله عن بعض الأساسيات والامكانيات البرمجية للفيجوال بيسك


لنفتح الدرس السابق ( الجزء الأول ) ونتابع

وكما كنا قد فعلنا

الكود التالي


كود:
    Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click

        Response.Write(RadioButtonList1.SelectedItem.Text.  ToString)

    End Sub
وهنا دعونا نقول ما هي ريسبونس
بيئة الASP.NET2 وكما قلت كانت بالأساس بدون دوت نت ( الكلاسيكية ) وأخذت الكثير من الأشياء منها ومنها

ريسبونس

بيئة ال ASP.NET2 تتكون من حسب ما أفتكر 8 كائنات أساسية
وهي
Response
Request
Server
Session
Trace
User
Application
Cash

Response
وكما قلت باختصار سابقا وسأكرر
هي بمثابة البيانات المرسلة من الخادم للمتصفح
حيث من ضمن الطرق التي يحتويها إجراء يسمى ب write()
وبالامكان كتابة نصوص عادية أو حتى كتابة نصوص هتمل
جرب مثلا أن تكتب "<br>"
وأيضا وهنالك الطريقة redirect والتي نقوم بطلب صفحة من السيرفر

مثلا إذا كان موقعنا يحتوي على عشر صفحات ونريد عند النقر على الزر أن يتم تحويلنا لصفحة رقم 6 فكل ما علينا

عمله في حدث النقر على الزر هو كتابة التالي

Response.redirct("PageName.aspx")



لنعود الآن للكود
الكود بسيط
اكتب . القائمة . العنصر المنتقى . نص العنصر . إلى نص ( عادي بدونها أيضا)



ماذا لو أردنا أن يكتب أنت اخترت الخيار و ( اسم الخيار )
طبعا راح تقول راح نكتب جملتين كالتالي
كود:
Response.Write("أنت اخترت الخيار")
Response.Write("<br>")
Response.Write("RadioButtonList1.SelectedItem.Text.ToString")
ولكن هذا ليس منطق كلما نريد أن نكتب أكثر من جملة سواء هنا أو في أداة عنوان .
الفيجوال بيسك مثل أية لغة برمجية به إمكانيات عديدة
لنجرب الكود التالي

كود:

كود:
  Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
        Response.Write("أنت اخترت " & RadioButtonList1.SelectedItem.Text.ToString)
End Sub

الكود بسيط جدا وقد قمنا بربط الجملتين بالحرف & بكل بساطة وبامكانك أن تضيف عدد لا نهائي من الربط
الحرف & يربطك بين متغيرين من نوع string وهي المتغيرات الحرفية طبعا يمكن إعادة قيادتها كما تشاء ولكن هذا

ليس موضوعنا

لنقم بجعل الكود داخل الزر تعليق ( )
ما هي التعليقات

هي ملاحظات وجمل يكتبها المبرمج لنفسه حتى يتذكر أمر ما أو حتى ليشرح الكود للبعض
فمثلا قد تحتاج إلى أن تبين الهدف من سطر معين في الكود فكل ما عليك هو التحويل للغة الإنجليزية والضغط على

حرف الطاء من الكيبورد قبل السطر مع العلم انه يتحتم عليك أن تضع قبل كل سطر بدء تعليق

والرمز هو
'



ماذا لو أردنا أن يخرج لنا على الصفحة رقم الخيار
الطريق بسيطة وهي عن طريق الخاصية SelectedIndex كالتالي ( الترقيم بيبدا من الرقم 0 وليس من الرقم 1)
أو إذا حدا مركز معي بيفتكر إنه أعطينا القيم أرقام نفس ترقيم الاندكس يعني يمكن كتابة الكود التالي أيضا

Response.Write(RadioButtonList1.SelectedValue)

Response.Write(RadioButtonList1.SelectedIndex)


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

يتعامل معاها كأنها رقم
يعني لو اخترنا الخيار الثالث فإن هذه الجملة بيفهمها RadioButtonList1.SelectedIndex كإنها رقم 2

وبالتالي بامكانك التعامل معاها كأنها رقم يعني بامكانك أن تضرب وتجمع
جرب التالي
Response.Write(RadioButtonList1.SelectedIndex + 1)

راح تلاقي سيكتب لك 5 إذا اخترت الخيار الخامس
جرب تضيف 2 أو تضرب ب 2 أو تطرح على 10 كل العمليات الحسابية جائزة
أكيد لمستخدمي الفيجوال بيسك هذا كلام عادي .



ماذا لو أردنا من البرنامج يكتب لنا التالي
أنت اخترت JSP
هذا الخيار رقم 4

ويكررها حسب رقم الخيار

هنا سنطر إلى استخدام جملة التكرار الشائعة
لنشرح جملة التكرار

كود:
        For i = 0 To 10 Step 1

        Next
جملة الشرط تبدا ب for وتنتهي ب next
وما نريد تنفيذه يكون بينهما

يتوجب وجود متغير لتبدأ العد منه ولتعريف متغير ( أفضل قراءة كتاب الأخ تركي بخصوص برمجة الفيجوال بيسك

دوت نت )
وباختصار اكتب dim I as integer حيث I اسم المتغير وانتجر نوعه وهنا نوعه عدد صحيح
في الكود بالأعلى 0 هي القيمة الابتدائية و10 هي القيمة النهائية للتكرار والرقم 1 هو عدد مرات الزيادة
وهي اختيارية وبدونها الزيادة سكتكون واحد
الآن لنكتب الكود التالي

كود:
    Protected Sub RadioButtonList1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles 

RadioButtonList1.Load
        Dim i As Byte

        For i = 1 To RadioButtonList1.SelectedIndex + 1 Step 1
            Response.Write("أنت اخترت  " & RadioButtonList1.SelectedItem.Text.ToString & "<br>" & "هذا الخيار رقم  

" & RadioButtonList1.SelectedIndex.ToString + 1 & "<br>" & "<br>")
        Next
    End Sub

كما قلت RadioButtonList1.SelectedIndex + 1 هي بمثابة رقم




الجزء الأخير البسيط لدرس اليوم سيكون عن الأحداث

ما هي الأحداث
النقر باستخدام الماوس حدث تحريك الماوس حدث الضغط على زر من الكيبورد حدث
بداية تحميل الصفحة حدث
تحميل كافة الأدوات في الصفحة يعتبر حدث

هذه هي أمثلة على أحداث الكميوتر وهي شبيهة بأحداثنا كالأكل والمشي والنوم


لنفترض أننا نريد أن ننفذ كود قبل تحميل الصفحة بقليل
ما العمل
إذا لاحظنا سابقا عندما كنا ننقر نقرتين في أي مكان فارغ في صفحتنا كان يظهر تلقائيا هذا الكود
كود:
 Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        
    End Sub
ونلاحظ التالي
Protected Sub
بروتكتد وهو محدد الوصول ويعني أن هذا الاجراء سنصل إليه من نفس الفئة والفئة الوارثة لها ( لا عليكم )
وسب تعني أنها دالة لن ترجع قيمة

Page_Load
اسم الاجراء

(ByVal sender As Object, ByVal e As System.EventArgs)
الكائن المرسل و نوع الحدث


Handles Me.Load
اقتناص حدث تحميل الصفحة

أيضا لا عليكم
المهم المفترض أن نكتب متطلبنا بين هذين السطرين
وهذه من أروع المزايا التي تقدمها مايكروسوفت وهي الكود الخلفي code beheind
وهي ليست موجودة في البي اتش بي وهذا ما يجعلها صعبة القراءة



نرى في صفحة الكود الخلفي في أعلى الكود كلمة load وبجانبها صورة البرق

ويسبقها اسم الأداة ( في حالتنا وهي الصفحة ) وبجانبها البرق
ومن هنا يمكن الوصول لأي حدث من أحداث الأدوات

وذلك بتحديد الأداة من اليسار أولا ثم اسم الحدث من على يمينها

افتح قائمة الأحداث وستجد حدث مثلا قبل بدء التحميل وحدث عند إغلاقها وحدث عند حصول خطأ..... إلخ
هناك بعض الأدوات لها أحداث كثيرة ومهمة مثل grid view وعندها سترون مدى أهمية الأحداث
بامكاننا أن ننشئ حدث تحميل الصفحة كالتالي

إذا من الآن وصاعدا لن أقول ضعوا الكود بين هاذين السطرين
بل سأقول
ضعوا الكود التالي في حدث تحميل الصفحة



تم بحمد الله الدرس الرابع الجزء الثاني
وإن شاء الله ستكون الدروس القادمة أكثر متعا وتخصصا طالما لم يطلب مني أن أوضح نقاط محددة أشرحها خارج خطتي


سألني أخ عن كيفية تشغيل الدرس المرفق وهي كالتالي
بعد فك الضغط والتاكد من أن الملفات في المجلد الذي سنختاره
بعد فتح الفيجوال استوديو
اذهب إلى File ?open ? Web SIte
ومن ثم اختر اسم المجلد الموجود به المشروع مباشرة

وفي هذا الدرس لم أضع شيئا كالمعتاد وأرجو من يهتم أن يذكرني

أخوكم خليل من فلسطين






__________________
مطور مواقع ASP.NET & تطبيقات Windows 8 & تطبيقات جوال WP7
بريدي :khalilme at hotmail.com
خليل سليم is offline   قديم 22-06-2007, 02:10 AM
الرد مع إقتباس
عضو نشيط جدا
#2  

ماشاء الله تبارك الرحمن..

درس ممتاز، بدأنا ندخل ونتعمق، ماشاء الله، درس وافي كاافي..

سر ونحن معك ..






__________________
بداية للمشاريع التجارية

ASP.NET,ASP 3.0

المدونة الشخصية : asp2asp.com

عدنا والعود أحمد...
asp2asp is offline   قديم 22-06-2007, 05:08 AM
الرد مع إقتباس
عضو سوبر نشيط
#3  

رائع عزيزي

واصل مسيرتك جزاك الله خير






__________________
Eng.Fedail
Computer and Electronics Engineer
الثلج is offline   قديم 24-06-2007, 06:18 AM
الرد مع إقتباس
الرد على الموضوع



أدوات الموضوع

قوانين المشاركات
لا يمكنك كتابة مواضيع جديدة
لا يمكنك إضافة ردود
لا يمكنك إرسال مرفقات
لا يمكنك تعديل مشاركاتك

كود vB متاح
كود [IMG] متاح
كود HTML غير متاح
Trackbacks are متاح
Pingbacks are متاح
Refbacks are متاح


المواضيع المشابهه
الموضوع كاتب الموضوع القسم الردود آخر مشاركة
الدرس الثاني في ASP.NET2 خليل سليم ASP و ASP.NET 8 08-06-2007 01:11 PM
الدرس الثانى من دروس الفرونت بيج (التعامل مع الروابط) MAX FORCE الويب والويب 2.0 والـ Semantic Web 4 30-01-2004 01:55 AM
سلسلة دروس سويش الدرس الرابع ... مدعم بالصور _-*الفيصل*-_ التصميم والرسومات والمونتاج 0 22-03-2001 04:45 PM
سلسلة دروس برنامج Swish ... الدرس الثاني _-*الفيصل*-_ التصميم والرسومات والمونتاج 3 28-02-2001 04:27 AM
الدرس الرابع هوميروس التصميم والرسومات والمونتاج 5 07-03-2000 12:46 AM


جميع الأوقات بتوقيت غرينتش +3. الوقت الآن هو 08:45 PM.