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

عرض بيانات مصفوفه في Gridview

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

اخواني عندي الكود التالي الذي يقوم بانشاء مصفوفه معتمده على كلاس كالتالي :

public class BoundClass2
{
	private string PName;
	private string PID;

	public string Name
	{
		get { return PName; }
		set { PName = value; }
	}
	public string ID
	{
		get { return PID; }
		set { PID = value; }
	}
 }

public partial class _Default : System.Web.UI.Page
{
	protected void Page_Load(object sender, EventArgs e)
	{

	}
	protected void Button2_Click(object sender, EventArgs e)
	{
		ArrayList Members = new ArrayList();

		BoundClass2 b = new BoundClass2();

		for (int i = 0; i < 10; i++)
		{

			b.Name = "Type Name:" + i.ToString();
			b.ID = "Type ID :" + i.ToString();

			Members.Add(b);
		}	   

		GridView1.DataSource = Members;
		GridView1.DataBind();



	}
}

GridView تظهر البيانات على عامودان وضعت لوب لادراج البيانات ولكن يظهر عندي اخر بيانات تم ادراجها في نهاية اللوب اين 1, 2 ,3 ,4 و 5 ??????

وكما هو موضع لكم بالصوره :

gridview.jpg

فهل من حل !؟

ليس كل ما يتمناه المرء يدركه

arabteam2000.gif

#2

مشكلتك بسيطة جداً.

فقط أكتب التعليمة التالية كأول تعليمة ضمن حلقة for.

b = new BoundClass2();

و لكن لي ملاحظة على كودك.

من الأفضل لك استخدام الـ Generics بدلاً من الـ ArrayList الاعتيادية كالتي:

List<MyClass> myList = new List<MyClass>();   //using System.Collections.Generics
#3

الف الف شكر اخي FerasGer83 .

اقتباس
من الأفضل لك استخدام الـ Generics بدلاً من الـ ArrayList الاعتيادية

ياريت مثال بسيط لاستخدامها مقارب لحالتي اعلاه .

ليس كل ما يتمناه المرء يدركه

arabteam2000.gif

#4

فقط استبدل

ArrayList Members = new ArrayList();

بـ

List<BoundClass2> Members= new List<BoundClass2>();

الفرق هنا المصفوفة أصبحت مخصصة للنمط BoundClass2 وليست Object كما في الـ ArrayList، و بالتالي لست بحاجة إلى عمل Casting لكل عنصر تريد استخراجه من المصفوفة، بالإضافة إلى أنه لا يوجد احتمال لخطأ غير مقصود بإضافة عنصر ما إلى المصفوفة ليس من النمط BoundClass2، ففي الـ ArrayList نستطيع إضافة ما نشاء لأنها تأخذ عناصر من النمط Object بينما لو حاولت الشيء ذاته في المصفوفة الثانية، لن تستطيع إضافة إلا عناصر من النمط BoundClass2.

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