| |||||||
| المدوّنات | البحث | مشاركات اليوم | اجعل كافة المشاركات مقروءة |
|
| | LinkBack | أدوات الموضوع |
| |||||
| درس عن Cross-page posting في الدرس السابق قمت بشرح مفهوم ViewState وهي تحتفظ فقط ببيانات الصفحة الحالية ولكن اذا أردت أن أستخدم قيم الصفحة الحالية في الصفحة التي تليها ...كيف سيتم ذلك هذا هو درسنا اليوم وهناك عدة طرق لذلك الطريقة الأولى تسمى Cross-Page Posting وهي طريقة جديدة وضعت في ال ASP.Net 0.2 وهي تستخدم مع الكونترولز التي تحتوي على الواجهة IButton مثل ( Button, LinkButton , ImageButton ) ونقوم بعمل المثال التالي لتوضيح الفكرة 1- يتم انشاء صفحتين الصفحة الأولى تتكون من 2 Label و 2 textbox وbutton وتكون اسم الصفحة Page1.aspx والصفحة الثانية تتكون من Label وتكون اسم الصفحة Page2.aspx كما في الصور الآتية ونعطي الخاصية PostBackUrl للزر Enter الموجود في الصفحة الأولى اسم الصفحة الثانية وهنا ستكون القيمة page2.aspx كما في الصورة التالية : ويتم كتابة كود في Page2 باانقر على الصفحة في أي مكان فارغ نقرتين بالماوس فيتم ظهور صفحة الكود فيتم كتابة الكود التالي في حدث ال Page-load C# كود:
If (PreviousPage != null)
{
Label.Text = “You came from a page titled “ + PreviousPage.Header.Title;
} ولأنني أحب الفيجوال بيسك دوت نت لن أضع اختاصره بل سأكتب كامل حروفه Visual Basic.net كود: If PreviousPage IsNot Nothing then Label.Text = “You came from a page titled “ & PreviousPage.Header.Title End If واذا أردنا أن نستخدم ما كتب في التكست الأول والثاني من الصفحة الأولى الى الصفحة الثانية يتم كتابة الكود التالي في الصفحة Page1.aspx بلغة السي شارب C# عمل property وهي عبارة عن دالة تستخدم لإحضار واعطاء قيم للمتغيرات الprivate وهنا سنستخدمها لأحضار قيم التكست الأول والثاني من الصفحة الأولى Page1 C# كود:
Public string GetFullName
{
Get { return FirstNameTextbox.Text + “ “ + LastNameTextbox.Text ; }
}
وكتابة الكود التالي في الصفحة الثانية في دالة الPage-load
If ( PreviousPage != null )
{
Page1 prePage = PreviousPage as Page1 ;
If ( prePage != null )
{
Label.Text = “ You Typed in this “ + prePage.GetFullName ;
}
} Visual Basic.net كود: يتم كتابة الكود الأتي في صفحة Page1 Pubic Function GetFullName () AS String Return FirstNameTextbox.Text & “ “ & LastNameTextbox.Text End Function ويتم كتابة الكود التالي في صفحة Page2 في دالة Page-load If PreviousPage IsNot Nothing Then Page1 prePage = PreviousPage as Page1 If prePage IsNot Nothing Label.Text = “ You Typed in this “ & prePage.GetFullName End If End If وستكون النتيجة كما في الصورة التالية لاحظ أن الكلاس الخاص بالصفحة المطلوبة سيبقى في الذاكرة ولذلك لا يفضل الاكثار من الطريقة هادي مع العلم أيضا يمكن اعادة قيادة الطريقة سيرفر . ترافسفر بوضع القيمة True بعد الفاصلة التي نلي العنوان كالتالي كود: Server.Transfer("index.htm",True) تم الدرس شكرا لكم
__________________ Response.Write ( م. خليل سليم مطور مواقع ASP.NET للتواصل : khalilme@hotmail.com ) | |||||
|
| |||||
| اقتباس:
__________________ قمت بإغلاق مواقعي من يريد شراء نسخه من جده طرب مراسلتي r.-f[@]hotmail.com | |||||
|
| |||||
|
يتوجب عليك أن تضيف هذا السطر في الصفحة <%@ PreviousPageType VirtualPath="~/AdminCP/A-m3rd.aspx" %> وتستبدل اسم الصفحة بالصفحة السابقة
__________________ Response.Write ( م. خليل سليم مطور مواقع ASP.NET للتواصل : khalilme@hotmail.com ) | |||||
|
![]() |
| أدوات الموضوع | |
| |
المواضيع المتشابهه | ||||
| الموضوع | كاتب الموضوع | المنتدى | مشاركات | آخر مشاركة |
| درس Sql-Injection + Cross Site Scripting | EmiDes.Com | PHP | 10 | 12-09-2006 06:06 PM |
| (الدرس رقم 10) درس طريقة اخذ نسخة احتياطية للمنتدى | توب لاين | إصلاح وصيانة المنتديات | 6 | 30-10-2005 05:26 AM |
| (الدرس رقم 9) درس شرح اهم تفاصيل موقعك في لوحة التحكم | توب لاين | تطوير الويب | 6 | 28-10-2005 08:05 PM |
| css بتحالف مع javascript لحماية صور موقعك (كود) | Zizwar | تطوير الويب | 45 | 23-08-2005 04:48 PM |