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

مشكلة تكرار العنصر فى ال Grid View

بدأه علاء الدين عبدالله ياسين في 13 مارس 2009 · 6 رد · 1,010 مشاهدة · في ASP.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

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

وجزاكم الله خيرا

post-50727-1236977208_thumb.jpg

اقترب للناس حســــابهم و هم فى غفلة معرضون

#2

ممكن توضح اكثر مش فاهم قصدك

abdullahf4.jpg
#3
c++2003 كتب:
ممكن توضح اكثر مش فاهم قصدك

انت تلاحظ فى الصورة اسم المزرعة تكرر بعد أهداف التربية و هذا لا نريده بل نريد ان يظهر اسم المزرعة مرة و احدة و ان تعددت اهداف التربية

اقترب للناس حســــابهم و هم فى غفلة معرضون

#4

إخوانى هل من مشارك فى حل هذه المشكلة للحاجة الملحة لها

اقترب للناس حســــابهم و هم فى غفلة معرضون

#5

السلام عليكم

أخي عند عرض البيانات على Grid View إستعملت الأمر Select طبعا سوف يقوم بعرض جميع البيانات لذا عليك إستخدام Distinct

Select

كما يلي:

SELECT DISTINCT < إسم الأعمدة> FROM < إسم الجدول>

ف DISTINCT تفيد عدم التكرار

تريد الفوز إضغط هنا

اشِهِدي يَا سَمَـا وَاكْتُبَنْ يا وُجـودْ

إنَّـنَـا للِحـمَـا سَنَكُونُ الجُـنُـودْ

فـنَـزيحْ البَـلاَ وَنَـفُـكُّ الْقُيُـودْ

ونَنيلُ الـرِّضـا مِنْ وَفَّى بِالعْهُـودِ

الشيخ عبد الحميد ابن باديس

#7
c++2003 كتب:

اخى جزاك الله خيرا نعم وجدت الحل فى الرابط المرسل و لكن أثناء و ضع الكود لم يعمل بطريقة صحيحة لأن Grid لم تعطى القيمة للدالة أى كل العناصر تدخل للدالة NULL فيتم دمج جميع العناصر ؟ فما الحل

protected void Page_Load(object sender, EventArgs e)
	{
		if (!Page.IsPostBack)
		{
			SqlConnection conn = DB.CreateConnection(DB.SheepGoatConnStr);
			conn.Open();
			lbluserName.Text = Session["UserName"].ToString();
			int userId = (int)Session["UserId"];

			// the grid view data bind
			DataTable dtfarmData = UsersUtil.GetUserFarmsData(conn, userId);
			grdFarmlist.DataSource= dtfarmData;
			grdFarmlist.DataBind();
			MergeRows(grdFarmlist);
			conn.Close();

		}
	}
		public static void MergeRows(GridView gridView)
	{
		for (int rowIndex = gridView.Rows.Count - 2; rowIndex >= 0; rowIndex--)
		{
			GridViewRow row = gridView.Rows[rowIndex];
			GridViewRow previousRow = gridView.Rows[rowIndex + 1];

			for (int i = 0; i < row.Cells.Count; i++)
			{
				if (row.Cells.Text == previousRow.Cells.Text)
				{
					row.Cells.RowSpan = previousRow.Cells.RowSpan < 2 ? 2 : 
										   previousRow.Cells.RowSpan + 1;
					previousRow.Cells.Visible = false;
				}
			}
		}
	}

علما بأن الGrid تأخد العناصر من الdata table

اقترب للناس حســــابهم و هم فى غفلة معرضون

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