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

مشكلة في foreach

مغلق
بدأه إسماعيل الحلو في 25 يوليو 2007 · 7 رد · 755 مشاهدة · في Microsoft Visual C#.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

يعطيكم العافية على مجهودكم الجبار يا خوان

تواجهني مشكلة في جملة foreach وهي عرض ترتيب العناصر

حيث كتبت هذا البرنامج لفحص الخانات المطلوب أن تكون بها قيمة بدلالة Tag والكود يعمل 100% ولكن المشكلة أنه يعرض آخر Text ضفته على الفورم ثم الذي يسبقة وهكذا أي يبدأ الفحص من الآخر إلى الأول

فهل من طريقة لكي يبدأ بالعكس يفحص أول خانة ويعرض النتيجة مباشرة

هذا هو الكود

foreach (Control C in this.Controls)
			{
				if (C is TextBox || C is ComboBox)
				{
					if (C.Text == "" && Convert.ToString(C.Tag) != "")
					{
						MessageBox.Show("الخانة فارغة");
						C.Focus();
						return;
					}
				}
			}

وشكرا لكم

يا أيها الناس قولو لا إله إلا الله تفلحوا وتملكوا بها العرب وتذل لكم العجم وإذا آمنتم كنتم ملوكا في الجنة

#2

ساعدوني يا جماعة في هذه المشكلة

يا أيها الناس قولو لا إله إلا الله تفلحوا وتملكوا بها العرب وتذل لكم العجم وإذا آمنتم كنتم ملوكا في الجنة

#3

السلام عليكم

اقتباس
تواجهني مشكلة في جملة foreach وهي عرض ترتيب العناصر

عرض ترتيب العناصر يكون بالخاصية TabIndex وليس Tag. جرب عدل الكود وأخبرني بالنتيجة

#4

أخي الكريم

أنا أعرف أن TabIndex لترتيب العناصر وهي مرتبة بشكل صحيح

انا استخدمت Tag لاختيار العناصر المطلوب فحصها حيث أن العنصر الذي يوجد في Tag الخاصة به قيمة يتم فحصه

فهمت علي

ما أريده أن يتم عرض تنبيه على العناصر على الفورم حسب ترتيبها في tabindex

يا أيها الناس قولو لا إله إلا الله تفلحوا وتملكوا بها العرب وتذل لكم العجم وإذا آمنتم كنتم ملوكا في الجنة

#5

عذرا أخي إسماعيل, المشكل غير واضح بشكل كاف.

هل بإمكانك رفع الكود هنا كامل أو بأكثر تفاصيل علني أستطيع مساعدتك؟

#6

تفضل أخي الكريم

هذا المثال أرجو التعديل عليه بما يتوافق مع المطلوب

وشكرا لك على التعاون

WindowsApplication1.rar

تم تعديل هذه المشاركة بواسطة إسماعيل الحلو في 27 يوليو 2007 في 00:26

يا أيها الناس قولو لا إله إلا الله تفلحوا وتملكوا بها العرب وتذل لكم العجم وإذا آمنتم كنتم ملوكا في الجنة

#7

ببساطة :

إن Controls هي عبارة عن مصفوفة و ترتيب العناصر داخلها يعتمد على ترتيب إضافتهم ...

في مشروعك فإن designer يقوم بالإضافة بالشكل :

 this.Controls.Add(this.comboBox1);
			this.Controls.Add(this.textBox3);
			this.Controls.Add(this.textBox2);
			this.Controls.Add(this.textBox1);

بالتالي Combo Box أولاً و بعده الآخرون ...

ما تحتاجه هو الإضافة بالترتيب الذي تريده :

			this.Controls.Add(this.textBox1);
			this.Controls.Add(this.textBox2);
			this.Controls.Add(this.textBox3);
 this.Controls.Add(this.comboBox1);

بالتوفيق

#8

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

والله هالمعلومة كنت غافلا عنها

والشكر أيضا لأخي Ben_Laiid على مجهوده

يا أيها الناس قولو لا إله إلا الله تفلحوا وتملكوا بها العرب وتذل لكم العجم وإذا آمنتم كنتم ملوكا في الجنة

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

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