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

Selectable Gridview

مغلق
بدأه E_IT في 21 أكتوبر 2007 · 6 رد · 886 مشاهدة · في ASP.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

سؤالي كيف استخدم الداتا الي يصير لها

من اليوزر select

يعني مثلا اليوزر سو سيلكت على داتا معينه من

gridview ال

بعد مايسوي سيلكت ابغى اعرضه له الاشياء الي اختارها في

message box

او مثلا استخدمها في عمليات حسابيه في صفحه اخرى

؟؟؟

سؤالي الثاني عندي كود بال

c#

ممكن احد يساعدني احوله الى

vb.net

الرجاء الرد ولكم جزيل الشكر

تم تعديل هذه المشاركة بواسطة E_IT في 21 أكتوبر 2007 في 19:37

#2

اولا عليك تحديد الحقل المفتاح للgridview مثلا:

DataKeyNames="ID"

اضف عمود الاختيار:

<asp:CommandField ShowSelectButton="True" />

تعامل مع الحدث:

protected void MyGrid_SelectedIndexChanged(object sender, EventArgs e)
	{
 int mySelectedId = int.Parse(MyGrid.SelectedValue.ToString());
		//do something with the id like binding to dataset based on diltering by id
	}

هناك طريقة سهلة وهو ان تبعث قيمة مفتاح السجل المختار كباراميتر الى SQLDataSource لتستخدمها في جملة sql:

مثال:

SELECT *From Students Where ID= :ID

الان الباراميتر ID سياتي من قيمة المفتاح للسجل المختار من ال gridview و يمكن اخبار النظام بذلك عن طريق اضافة باراميتر للsqldatasource من نوع controlparameter:

<SelectParameters>
		<asp:ControlParameter ControlID="MyGrid" Name="ID" PropertyName="SelectedValue" />
	</SelectParameters>

عند تشغيل الصفحة و اختيار سجل من الgridview فان الsqldatasource ستستقبل قيمة الباراميتر ID من الgridview و الفضل يرجع لخاصية الselectpsrameters و نوع controlparameter

طبعا الsqldatasource التي تستقبل الباراميتر ,يمكن ان تكون مربوطة مع detailsview كي نتمكن من عرض معلومات اكثر عن الطالب الذي تم اختياره من الgridview خاصة ان الgridview لها امكانية محدودة لعرض اعمدة كثيرة العدد.

تحياتي

مدني

#3

شكرا اخي مدني على الرد

انا اعرف كيف اسوي select لكن المشكله الي عندي اني ماقدر استخدم القيم الي يسوي عليها اليوزر select الا داخل الSelectedIndexChanged sub ابغى طريقه تمكني اني احفظ القيم المختاره في متغيرات واستخدمها في عمليات اخرى خارج الsub

وبالنسبه للطريقه الثانيه كيف استخدمها اذا الgridview عندي يعرض قيم من اكثر من table ؟؟؟

وياليت يكون الكود بالvb.net

وشكرا... :)

#4

لهدرجه سؤالي مستحيل :unsure: :wacko:

مافي اي ردود :angry: :angry:

تم تعديل هذه المشاركة بواسطة E_IT في 23 أكتوبر 2007 في 23:48

#5
اقتباس
يعرض قيم من اكثر من table

فقط تاكد ان قيمة الخاصية DataKeyNames هي المفتاح الرئيسي بحيث تكون قيمة المفتاح فريدة في كل سطر (Unique),مثلا جدول الطلبة مع جدول الدروس بحيث ان رقم الطالب مع رقم الدرس لا يتكرر لان الطالب لا يأخذ الدرس مرتين في السنة.وبالتالي الخاصية تكون:

DataKeyNames = "StudentId,CourseId"

الان في الحدث MyGrid_SelectedIndexChanged,تحصل على قيم الحقول كالتالي:

studentId = int.parse(MyGrid.SelectedDataKey.Values[0].ToString());
courseId = int.parse(MyGrid.SelectedDataKey.Values[1].ToString());

طبعا هذا بعد ان تكون قد عرفت studentId و courseId في اعلى الصفحة بحيث يمكنك استخدامهم في اماكن اخرى في الصفحة.

اقتباس
واستخدمها في عمليات اخرى خارج الsub

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

تم تعديل هذه المشاركة بواسطة madani في 24 أكتوبر 2007 في 00:37

#6

شكــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــرا (:

#7

شكــــــــــــــــــــــــــرا

طيب انا عندي كود بال#c

ممكن تحوله لي الى vb.net

هذا الموضوع مغلق.

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