مجلس أوراق ملونة أوراقـ متساقطهـ على شغافـ قلوبكمـ .. [تم تحديث قوانين القسم نسعد بإطلاعكم]


عدد مرات النقر : 25,156
عدد  مرات الظهور : 36,387,630

موضوع مغلق
 
LinkBack أدوات الموضوع انواع عرض الموضوع
قديم 24-12-2005, 10:24 PM   #1

الصورة الرمزية عبد الله الساهر

 رقم العضوية :  1
 تاريخ التسجيل :  22-07-2004
 المشاركات :  70,701
 الدولة :  ムレ3乃乇乇尺
 الجـنـس :  ذكر
 العمر :  38
 عدد النقاط :  243859
 قوة التقييم :  عبد الله الساهر تم تعطيل التقييم
 SMS :

حتى لو اجتهدت و قطعت فؤادك.. ووضعته للناس في طبق فضي ليرضوا عنك لن تفلح وربما لن تصل لمستوى يرضيك أنت عن نفسك فاجتهد ليكون الله وحده راضياً عنك وأغمض عينيك عن ما سواه

 اخر مواضيع » عبد الله الساهر
 تفاصيل مشاركات » عبد الله الساهر
 أوسمة و جوائز » عبد الله الساهر
 معلومات الاتصال بـ عبد الله الساهر

Lightbulb Master Pages التي تقدمها ASP.NET


إحدى المزيات الفريدة من نوعها، والتي ستجعل مطوري الويب Web Developers في راحة نفسية هي صفحات الأدوات الرئيسية Master Pages التي تقدمها ASP.NET Whidbey.
في المقال التالي سنتعرف هذه الصفحات و كيفية العمل معها بقليل من التعمق.


مما لا يختلف فيه اثنان، ولا يتناطح فيه عنزان أن الراحة النفسية هي مطلب أساسي لزيادة انتاجية الفرد، و من المستحيل أن تحل الراحة النفسية في ذهن مشغول بالتفكير سواء بحل المشاكل أو بالتخوف من عقبات قادمة. و مطور الويب Web Developer حاله كحال أي فرد في العالم، حالته النفسية يجب أن تكون مطمئنة دائما، دون تخوفات أو قلق لكي ينعكس ذلك على تطبيقاته الجميلة.

فماذا تتوقع من مطور يكتب شيفرات الـ Business Layer لموقعه، وهو يفكر في تصميم واجهة المستخدم User Interface، أو بالمعنى الأصح وهو خائف من تصميم تلك الـواجهة UI لتطبيقه ..! هل لك أن تتخيل حالة الاضطراب التي هو فيها ..! في الحقيقة ليس القصد من مقدمتي هذه أن أجعلك تذرف دمعة حزن على مطوري الويب أو على حالتهم النفسية، ولكني أحببت أن أذكرك بهذه المشاكل التي جعلت فريق تطوير ASP.NET في شركة Microsoft يضعوا لها حدا تقف عنده، كي تطمئن الحالة النفسية لمطوري الويب.



نعم، اطمئن. فبمجرد استخدامك للنسخة الجديدة من ASP.NET والمعروفة بـ Whidbey | ان كنت تواجه مشكلة مع المصطلح Whidbey فأنصحك بقراءة مقالي السابق | ستعلم يقيناً أن جميع هذه المخاوف من تصميم واجهة المستخدم والمشاكل التي يمكن أن تواجهها في عمليات التضمين Include و تصميم الأدوات الخاصة ستزول نوعا ما، و بمجرد أن تعتاد على الأدوات الجديده ستجد أن لا وجود لتلك المخاوف نهائيا.



ودع مشكالك باستخدامك Master Pages

حسناً، ان كنت أحد مطوري الويب الذين تكلمت عنهم في مقدمتي البسيطة، و الذين تتعب حالتهم النفسية من تصميم واجهة المستخدم و بالأخص من تكرار بعض الأجزاء لتوحيد جميع صفحات الموقع فأقدم لك و بكل فخر احدى ميزات Whidbey الجديده وهي Master Pages، بشكل عام Master Page تمكنك قادرا على انشاء قالباً واحداً لجميع صفحات الموقع بكل يسر و سهولة عن طريق الـ Form Designer المستخدم في تصميم صفحات ASPX العادية و بذلك تكون قد ودعت جميع المشاكل و المخاوف المتعلقة بالتضمين، و انشاء الأدوات الخاصة Web User Controls.



كيفية عمل Master Pages

في الحقيقة و كما ذكرت سابقا أن صفحات الأدوات الرئيسية Master Pages هي عبارة عن صفحات ASP.NET و لكن بامتداد .master هذه الصفحات يمكنها أن تحوي على الثوابت النصية Static ************ ، أدوات الخادم Server Controls أو حتى أوسام HTML ، كما أنها تحوي أيضا على الاجزاء العلوية للصفحات مثل <html>, <head>, <form> . فعلى سبيل المثال يمنك أن تستخدم الوسم <img> داخل صفحات الـ Master لكي تصل الى غرض معين مثل وضع شعار أو ما الى ذلك.



من الجدير بالذكر هنا أنه يمكنك استخدام أداة ContentPlaceHolder في أكثر من موضع في صفحة الـ Master و ذلك كي تحجز مكان في الصفحة (Master Page ) يمكنك ملأه بالبيانات المطلوبه في صفحات الموقع وذلك عن طريق انشاء صفحات المحتوى Content Pages التي هي عبارة عن صفحات ASP.NET ايضا و لكنها متصلة ( مرتبطة ) بـصفحة Master معينه. في صفحات المحتوى يمكنك ادراج ما تريد عن طريق ما يعرف بـأدوات المحتوى Content Controls والمرتبطه بـ ContentPlaceHolder معينة. على سبيل المثال فليكن لدينا صفحة Master تحوي على ContentPlaceholder1 و ContentPlaceholder2، و صفحة محتوى Content Page تحوي على اداتي محتوى Content Controls الأولى مرتبطة مع ContentPlaceholder1 والثانية مرتبطة مع ContentPlaceholder2.



في صفحات المحتوى، و بعد انشاء أدوات المحتوى يمكنك ادراج النصوص، الصور أو حتى بيانات قادمة من مصدر للبيانات Data Source .. داخلها، وكل ما خارج أدوات المحتوى فهو مرفوض ( لن يظهر بالصفحة ).



بالمناسبة، يمكنك انشاء اكثر من صفحة Master واحدة لتخصيص أجزاء من موقعك بشكل، وأجزاء بشكل اخر.



في وقت التنفيذ Run-Time

الان، و بعد أن اطلعت على الفكرة الاساسية لصفحات الـ Master فأعتقد أن هناك مجموعة من الأسئلة عن سلوك MasterPages في وقت التنفيذ Run Time ( وقت طلب الصفحة ) لذا دعني أقول لك ماذا يحصل عن طلب الصفحة Page request ؟

· يقوم المستخدم ( صاحبنا ) بكتابة عنوان صفحة المتحوى بكل بساطة و ينقر Enter

· تحضر الصفحة المطلوبة .

· تسأل ان كانت على علاقة بأي صفحة من صفحات Master .

· ان نعم، فتحضر صفحة الـ Master ذات العلاقة.

· تدمج الصفحتان في صفحة واحدة.

· تتم عملية العرض على المتصفح.



وبذلك يتمتع المستخدم بمشاهدة خليط الصفحتين، وهو يعتقد أنها صفحة واحده !





انشاء العلاقة

العلاقة التي ذكرتها قبل قليل هي علاقة قوية، بسيطة مبنية على المحبة و الألفة بين صفحات المحتوى و صفحة الـ Master، ولإنشاء هذه العلاقة تحتاج لكتابة سطر واحد اما في صفحة ASPX أو في Web.Config

· على مستوى الصفحة، باستخدام Page Directive

<%@ Master ************************="C#" master="MySite.master" %>

· على مستوى التطبيق، باستخدام Web.Config

<pages Master="MySite.Master" />

الأحداث Events

أنت الان على معرفة تامة بـماهية صفحات Masters و التي هي صفحات ASPX مما يعني أنها تحوي على نفس الأحداث التي تحويها الصفحات العادية، و هذا يعني أنه يمكنك انشاء مقابض الأحداث Event Handlers بكل بساطة داخل صفحة الـ Master.

كما تعرف، فالصفحة الناتجه للمستخدم هي عبارة عن خليط بين صفحة الـ Master و صفحة المحتوى، ولكل من الصفحتين أحداثه Events التي يمكن قبضها Event Handling من داخل الصفحة، بعبارة أخرى لا يمكنك أن تنشأ Event Handler في صفحة الـ Master لحدث موجود أصلا في ثفحة المحتوى، و العكس .

في الكثير من الحالات سيكون هناك تشابه في الاحداث التي سيتم تفعيلها للصفحتين مثل Page_Init و Page_Load وفي هذه الحالة يكون ترتيب الاحداث كما يلي، على التوالي :

1. حدث Initialization للأدوات الموجوده في صفحة الـ Master

2. حدث Initialization للأدوات الموجوده في صفحة الـمحتوى

3. حدث Initialization لصفحة الـ Master بذاتها.

4. حدث Initialization لصفحة المحتوى بذاتها.

5. حدث Load لصفحة المحتوى

6. حدث Load لصفحة الـ Master

7. حدث Load للأدوات الموجوده في صفحة Master

8. حدث Load للأدوات الموجوده في صفحة المحتوى.



قد يفيدك الترتيب السابق في تحديد المكان المناسب لوضع شفراتك Codes التي لها علاقة مع تنفيذ الأحداث.



صفحات Master المتداخلة Nested Master Pages

كما يقال ( المكتوب باين من عنوانه! ) فعنوان هذه الفقره واضح جدا، فهو يقول لك أنه بإمكانك عزيزي انشاء صفحتي Master احداهما ضمن الاخرى.

فان كنت تصمم موقعا لشركة كبيرة، بل كبيرة جدا .. فأنت تحتاج لأن يكون لك Master Page لصفحاتك، و أحد الشركات الفرعية التابعة للشركة الكبيرة التي تعمل لحسابها أرادت تصميم موقع (فرعي ) أي تود أن يكون لها قالب و طابع خاص، بالإضافة للمحافظة على طابع الشركة الأم ففي هذه الحالة استخدم Nested Master Pages . و حينها سيكون لديك Parent Master Page صفحة رئيسية أب ، و صفحة رئيسية ابن Child Master Page، الصفخة الابن تحمل تقريبا جميع خواص الصفحة الأب الا أنها مرتبطه مع صفحة Master وهي الصفحة الأب.



صفحة Parent Master Page

<%@ Master ************************="C#" %>

<HTML>

<BODY>

<form id="Form1" runat="server">

<h1>Parent Master</h1>

<p>

<font color="red">This is Parent-master content.</font>

</P>

<asp:contentplaceholder id="MainContent" runat="server" />

</form>

</BODY>

</HTML>



صفحة Child Master

<%@ Master ************************="C#" master="Parent.master"%>

<asp:content id="Content1" contentplaceholderid="MainContent" runat="server">

<asp:panel runat="server" id="panelMain" backcolor="lightyellow">

<h2>Child master</h2>

<asp:panel runat="server" id="panel1" backcolor="lightblue">

<p>This is childmaster content.</p>

<asp:contentplaceholder id="Contentplaceholder1" runat="server" />

</asp:panel>

<asp:panel runat="server" id="panel2" backcolor="pink">

<p>This is childmaster content.</p>

<asp:contentplaceholder id="Content2" runat="server" />

</asp:panel>

</asp:panel>

</asp:content>



محتوى ينتمي الى الـ Child Master Page

<%@ Page ************************="C#" master="Child.Master"%>

<asp:content id="Content1" contentplaceholderid="Content1" runat="server">

<asp:label runat="server" id="Label1"

************="Child label1" font-bold="true" />

<br>

</asp:content>

<asp:content id="Content2" contentplaceholderid="Content2" runat=server>

<asp:label runat="server" id="Label2"

************="Child label2" font-bold=true/>

</asp:content>





الوصول الى أعضاء الـ Master

يمكنك الوصول بسطور شيفراتك الرقيقة الى أعضاء صفحة الـ Master من خصائص Properties، طرق Methods أو أدوات Controls بشرط أن تكون الطرق Methods و الخصائص Properties معرفة على شكل عضو عام Public. و للوصول للأعضاء فإنك تسلك احدى الطريقتين :



في شاشة الكود Code Window استخدم الخاصيه Master والتي تعبر عن صفحة الـ Master. على سبيل المثال فليكن لديك الـخاصية Header في صفحة Master فإنك تقوم بما يلي :
Master.Header=”Hello Whidbey”

استخدام الطريقة FindControl ، انظر كيف يمكن الوصول لأداة Label ذات اسم masterHeader
Sub Page_Load()

Dim masterHeader As Label



masterHeader = CType(Master.FindControl("label1"), Label)

If Not (masterHeader Is Nothing) Then

masterHeader.************ = "My Page 1 "

End If

End Sub

بيدك .. !

ان كنت من المحظوظين الذين حصلوا على نسخة من Whidbey فيمكنك تطبيق ما قرأت قبل قليل خطوة بخطوة، و ان لم تكن Whidbey بين يديك، فلن تخسر شيئا ان اطلعت على التالي..

اضافة صفحة Master
من قائمة Project اختر Add New Item وسمها myMaster
الان نقوم بتصميم صفحة الMaster الخاصه بك و ذلك عن طريق الـ Form Designer و لكن الناتج


<%@ Master ************************="C#" %>

<asp:content id="Content1" contentplaceholderid="MainContent" runat="server">

<asp:panel runat="server" id="panelMain" backcolor="lightyellow">

<h2>Child master</h2>

<asp:panel runat="server" id="panel1" backcolor="lightblue">

<p>This is childmaster content.</p>

<asp:contentplaceholder id="Contentplaceholder1" runat="server" />

</asp:panel>

<asp:panel runat="server" id="panel2" backcolor="pink">

<p>This is childmaster content.</p>

<asp:contentplaceholder id="Content2" runat="server" />

</asp:panel>

</asp:panel>

</asp:content>

اضف صفحة ASPX الى المشروع من قائمة Project ايضا
في نافذة الكود أكتب السطر
<%@ page ************************="C#" master=”myMaster.master” %>



خاتمة

في النهاية أود أن أذكر بأن Master Page هي احدى الخواص الجديدة المقدمة لمطوري الويب باستخدام ASP.NET في الاصدارة الجديدة منها و المعروفة Whidbey

أتمنى أن تكون Master Page قد جعلت نفسيتك مرتاحة.

مع تمنياتي لك براحة نفسية تامه.

توقيع :





رحمك الله يا أنس
وجعل الفردوس دارك ومستقرك



عبد الله الساهر غير متواجد حالياً
رسالة لكل زوار منتديات العبير

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

قديم 25-12-2005, 08:37 PM   #2

الصورة الرمزية أمـ جود ـ

 رقم العضوية :  4
 تاريخ التسجيل :  22-07-2004
 المشاركات :  6,182
 العمر :  36
 عدد النقاط :  32
 قوة التقييم :  أمـ جود ـ is on a distinguished road
 اخر مواضيع » أمـ جود ـ
 تفاصيل مشاركات » أمـ جود ـ
 أوسمة و جوائز » أمـ جود ـ
 معلومات الاتصال بـ أمـ جود ـ

افتراضي


قمة الابداااااااااااع يامدير العبير الاوحد

توقيع :



مٍَآعُآدُ يًرٍضَيًنٍيً وَفٍآ...و لآيًزٍعُلنٍيً جََفٍآ..
مٍَتِسِآويًهُـ َفٍيً خٍآطَرٍيً ..ظِلمٍَـ آلبُشُرٍ وآنٍصِآَفٍهُمٍَـ..
ولو تِوَقٍَِفٍ آلدُنٍيًآ عُلىٍ شُمٍَعُ آلغٌَرٍآمٍَـ آلليً طََفٍآ..
بُعُضَ آلشُمٍَوعُ..أنٍآ أتِعُمٍَدُ گسِرٍهُآ وآتِلآَفٍهُآ..

أمـ جود ـ غير متواجد حالياً
قديم 30-12-2005, 02:01 AM   #3

الصورة الرمزية صمت الجمال

 رقم العضوية :  35
 تاريخ التسجيل :  06-09-2004
 المشاركات :  1,120
 العمر :  38
 عدد النقاط :  10
 قوة التقييم :  صمت الجمال is on a distinguished road
 اخر مواضيع » صمت الجمال
 تفاصيل مشاركات » صمت الجمال
 أوسمة و جوائز » صمت الجمال
 معلومات الاتصال بـ صمت الجمال

افتراضي


والله دروس في غااية الوضوح والروعه

توقيع :




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


صمت الجمال غير متواجد حالياً
قديم 02-01-2006, 09:39 AM   #4
Has A Reputation Beyond Repute

الصورة الرمزية أحمد نسيب

 رقم العضوية :  220
 تاريخ التسجيل :  17-10-2005
 المشاركات :  4,029
 الجـنـس :  ذكر
 عدد النقاط :  50215
 قوة التقييم :  أحمد نسيب has much to be proud ofأحمد نسيب has much to be proud ofأحمد نسيب has much to be proud ofأحمد نسيب has much to be proud ofأحمد نسيب has much to be proud ofأحمد نسيب has much to be proud ofأحمد نسيب has much to be proud ofأحمد نسيب has much to be proud ofأحمد نسيب has much to be proud ofأحمد نسيب has much to be proud ofأحمد نسيب has much to be proud of
 اخر مواضيع » أحمد نسيب
 تفاصيل مشاركات » أحمد نسيب
 أوسمة و جوائز » أحمد نسيب
 معلومات الاتصال بـ أحمد نسيب

افتراضي


الله يزيدك من علمه

ايداع بدون منازع


سلامي لك

توقيع :

سبحانك اللهم وبحمدَك

من يهتم بنفسه العليا يصبح رجلا عظيما، أما من يهتم بنفسه السفلي فيصبح رجل وضيعا.
منسيوس
فيلسوف صيني كونفوشيوسي قديم.

أحمد نسيب غير متواجد حالياً
قديم 13-01-2006, 11:39 PM   #5

الصورة الرمزية عبد الله الساهر

 رقم العضوية :  1
 تاريخ التسجيل :  22-07-2004
 المشاركات :  70,701
 الدولة :  ムレ3乃乇乇尺
 الجـنـس :  ذكر
 العمر :  38
 عدد النقاط :  243859
 قوة التقييم :  عبد الله الساهر تم تعطيل التقييم
 SMS :

حتى لو اجتهدت و قطعت فؤادك.. ووضعته للناس في طبق فضي ليرضوا عنك لن تفلح وربما لن تصل لمستوى يرضيك أنت عن نفسك فاجتهد ليكون الله وحده راضياً عنك وأغمض عينيك عن ما سواه

 اخر مواضيع » عبد الله الساهر
 تفاصيل مشاركات » عبد الله الساهر
 أوسمة و جوائز » عبد الله الساهر
 معلومات الاتصال بـ عبد الله الساهر

افتراضي


وياكم ان شاء اللع


ربمنا يوفقكم

عبد الله الساهر غير متواجد حالياً
موضوع مغلق

مواقع النشر (المفضلة)


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

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

BB code is متاحة
كود [IMG] متاحة
كود HTML معطلة
Trackbacks are متاحة
Pingbacks are متاحة
Refbacks are متاحة


المواضيع المتشابهه
الموضوع كاتب الموضوع المنتدى مشاركات آخر مشاركة
أكثر الأشياء بساطة هي التي تنجح أبكاني قرآن ربي مجلس أوراق ملونة 15 26-05-2014 06:05 AM
الرضاعة الطبيعية من أهم العوامل التي تزيد مناعة الأطفال الخدج سماهر الحلوه مجلس الصحة والغذاء 0 17-11-2013 04:20 PM
ثمانون مسألة في أحكام الاضحية اديم المطر مجالسُ الدعوةِ إلى الله حُجةٌ وتاجٌ من نور 9 28-10-2012 05:53 PM
كيف نستخدم آلإنترنت في تعلم آللغة آلإنجليزية .. شموخ كبريائي مجلس أوراق ملونة 9 06-06-2012 07:55 PM
::: مائة وسيلة لنصرة المصطفى صلى الله عليه وسلم ::: مفاهيم أنثى مجلس نبي الرحمة وعظماء التاريخ الاسلامي 13 16-02-2012 03:17 AM


الساعة الآن 11:14 AM


Powered by vBulletin® Copyright ©2000 - 2020, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO 3.6.0 TranZ By Almuhajir
Ads Organizer 3.0.3 by Analytics - Distance Education
جميع الحقوق محفوظة لـ : منتديات العبير
المحتوى المنشور فى موقع العبير لايعبر بالضرورة عن وجهة نظر الإدارة وإنما يعبر عن وجهة نظر كاتبها