الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

مشكلة في الgridview

بدأه I_s في 22 فبراير 2008 · 3 رد · 490 مشاهدة · في ASP.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمة الله وبركاته

اخوتي الكرام

ارجو مشاعدكم العاجلة

عندي مشكلة في التعامل مع ال data grid

وهي كالآتي

انا استخدم مصفوفة يتم ملأها من data reader

من قاعدة البيانات

هذه المصفوفة هي datasource بالنسبة للجريد فيو

وبالفعل تملأها

عند استخدام عناصر الداتا جريد من النوع hyperlink field

تعمل بشكل جدي جدا ولكن لا يوجد حدث click

فانا اريد تمرير ال مسار الصفحة التي تم فتحها

جربت استخدام hyperlinkbutton

وحصلت على المسار بالفعل ولكن المشكلة ان التنفيذ اصبح بطيئا حيث يقوم بتحميل الصفحة من البداية ويقوم بتنفذ كل العمليات والتي تستغرق وقتا

طويلا

وكذلك استخدمت

Response.Write("<script language ='javascript'>window.open('" & url & "','NewWindow','resizable=yes,maximize=yes,width=800,height=600');</script>")

لفتح الصفحة او المسار الذي تم الضغط عليه

وتعمل بشكل جيد ولكن التنفيذ قد يمتد لعدة دقائق لان ملئ المصفوفة التي تعتبر مصدر للجريد فيو

فان البرنامج يقوم بمجموعة عمليات كثيرة جدا

ارجة مساعدتي

فان hyperlinkfield

يعمل معي بشكل جيد ولكن لا يومج حدث يفيدني في استرجع ما اريد حتى

GridView1_SelectedIndexChanged

لا يعمل نهائيا

#2

استخدم

<a href='URL'> <a/>

ويمكنك أن ترسل parameter من خلالها أيضا بالطريقة التالية

 <a href='<%# DataBinder.Eval(Container, "DataItem.YourParameter") %>'

PMI_Logo_1.jpg

مدير مشاريع محترف - PMP
محلل أنظمة معتمد
مدير فريق برمجة تطبيقات ويب .Net

======|||||=====

======@ @====
==o0o== ( ) ==o0o===
================
كل منا يحتاج إلى الإرادة حتى يستطيع أن يقوم بعمله

#3

الأخ الفاضل ممكن لو سمحت توضحلي أكتر

يعني لو ارفقت مثال شغال اكون شاكر ليك جدا

او كود اكثر مع الشرح

ارجو الا اثقل عليك

جزاك الله عني كل خير

وجعله في ميزان حسناتك

#4

أعتقد أنه حتى في حالة استخدام طريقتك الأولى أو استخدام الطريقة التي قلتها لك فإن ذلك لا يؤثر على الأداء

لأنه أصلاً أنت تقوم بفتح صفحة أخرى، وتلقائياً سيتم استدعاء الصفحة بالكامل في كل حالة استدعاء

وإذا أردت فتح Url داخل صفحتك فأنصحك باستخدام تقنية Ajax لأن ذلك يوفر لك الكثير من الوقت

أما GridView1_SelectedIndexChanged فهي لا تعمل في حالتك هذه، لأن ما تحتاجه هو إنشاء حدث في زر الاختيار ضمن الجريد فيو ووضع Command Name مثلا ليكون اسم Select وثم في الكود في حدث RowCommand للجريد تكتب الأمر التالي

		If e.CommandName = "Select" Then
				  Response.Write("<script language ='javascript'>window.open('" & url & "','NewWindow','resizable=yes,maximize=yes,width=800,height=600');</script>")
		End If

أرسل الكود وسأقوم ان شاء الله بالمساعدة إن استطعت

PMI_Logo_1.jpg

مدير مشاريع محترف - PMP
محلل أنظمة معتمد
مدير فريق برمجة تطبيقات ويب .Net

======|||||=====

======@ @====
==o0o== ( ) ==o0o===
================
كل منا يحتاج إلى الإرادة حتى يستطيع أن يقوم بعمله

مواضيع مشابهة