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

combobox و listbox

مغلق
بدأه غسان.ع في 27 مايو 2006 · 6 رد · 829 مشاهدة · في Microsoft Visual Basic.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

سلام عليكم

كتبت كود بحيث عندما اختار من الcombobox اسم "محمد" مثلا تظهر تواريخ ميلاد كل الذين اسمهم "محمد" في الlistbobox

لكن كان هناك مشكلة انه يكتب في ال listbobox اسم الجدول "personal"

والكود كما يلي :

dset2.Clear() 
			da1.SelectCommand.Parameters("@par").Value = ComboBox3.Text 
			da1.Fill(dset2, "personal") 
			ListBox1.Items.Add(dset2.Tables("personal"))

وجملة الselectcommand هي:

Me.SqlSelectCommand1.CommandText = "SELECT birthday FROM personal WHERE (name LIKE @par) " 
		Me.SqlSelectCommand1.Connection = Me.con 
		Me.SqlSelectCommand1.Parameters.Add(New System.Data.SqlClient.SqlParameter("@par", System.Data.SqlDbType.NVarChar, 50, "name"))

فما المشكلة ؟؟؟؟؟؟؟؟؟؟؟؟؟؟ :(

تم تعديل هذه المشاركة بواسطة غسان.ع في 27 مايو 2006 في 23:14

#2

أخى العزيز يوجد تعديل بسيط فى الكود و ان شاء الله الكود يشتغل

اقتباس
ListBox1.Items.Add(dset2.Tables("personal"))

انت

أخى العزيز يوجد تعديل بسيط فى الكود و ان شاء الله الكود يشتغل

اقتباس
ListBox1.Items.Add(dset2.Tables("personal"))

انت فى الكود ده ما حددتش العنصر اللى المفروض يضيفه دى حاجة

يعنى الكود المفروض يبقى بالشكل ده

 ListBox1.Items.Add(dset2.Tables("personal").row(0)("Birthday"))

و لكن الكود ده هايعرض عنصر واحد بس

يعنى المفروض ان انت تعمل جملة for و تغير رقم الصف اللى المفروض يضيفه و تكون جملة for من صفر-الى عد الصفوف -1

dim x as integer
for x= 0 to dset2.tables("Personal").rows.count-1
listbox1.items.add(ds2.tables(""personal).row(x)("Birthday"))
next

و ان شاء الله الكود يشتغل

لا تنسانى بصالح دعواتك

#3

لك جزيل الشكر يا اخي m_3ryan وجازاك الله خيرا ونفع بك الامة

#4

EmpAbsance.rarالاخ غسان مع التحية

بالنسبة كمبو بوكس مع الست بوكس

انا عندي نفس المشكلة وهي اريد اضافة اسماء الاقسام من جدول الاقسام الى كمبو بوكس فعند تحديد القسم من الكمبو بكس تظهر اسماء الموظفين في الست بكس من جدول الموظفين

#5

خي alharbi_saud سؤعطيك الكود الذي عملت به وان شاء الله انه سيعمل عندك

أولا تكتب جملة sql لل sqldataadapter على النحو التالي بعد ان تكون قد اخترت جدول الموظفين

SELECT	emp_name
FROM		 employees
WHERE	 (dept_name LIKE @par)

هذا على فرض انك وضعت اسم القسم الذي يعمل فيه كل موظف في جدول الموظفين

ثم تضع الكود التالي

Try

			ds1.Clear()
			listbox1.Items.Clear()
			da1.SelectCommand.Parameters("@par").Value = combobox1.Text
			da1.Fill(ds1, "employees")

			Dim x As Integer
			For x = 0 To ds1.Tables("employees").Rows.Count - 1
				listbox1.Items.Add(ds1.Tables("employees").Rows(x)("emp_name"))
			Next


		Catch ex As SqlClient.SqlException
			MsgBox(ex.Message, MsgBoxStyle.OKOnly, "إعلام")
		End Try

ds1 هي dataset

da1 هو dataadapter

التوفيق ان شاء الله :)

تم تعديل هذه المشاركة بواسطة غسان.ع في 31 مايو 2006 في 19:15

#6

لكن يا اخ غسان انا عندي اسم القسم موجود في جدول الاقسام يعني الموجود في جدول الموظفين رقم القسم

وثانيا ما معنى هذا الكود ( like @per dept_name )

جدول الموظفين يحتوي :

1- رقم الموظف

2- اسم الموظف

3- رقم القسم

جدول الاقسام يحتوي :

1- رقم القسم

2- اسم القسم

#7

إذا غير جملة الsql للsqldataadapter على النحو التالي

SELECT	emp_name
FROM		 employees
WHERE	( select dept_num from department where(dept_name LIKE @par))

اقتباس
وثانيا ما معنى هذا الكود ( like @per dept_name )

@par هو وسيط او براميتر نضعه عندما تكون هناك عملية اختيار مثلما هو موجود في سؤالك وبمعنى آخر هو القيمة التي تحدد عند التطبيق وليس عند تنفيذ البرنامج وتشتطيع تسميته كما تشاء بشرط ان يبدأ ب @

والله اعلم

تم تعديل هذه المشاركة بواسطة غسان.ع في 4 يونيو 2006 في 21:10

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

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