View Full Version : حرفه ای: کار با آرایه ها
elham.saedi2014
یک شنبه 28 خرداد 1396, 21:23 عصر
سلام
من یه combo box دارم که نام کالا رو از دیتابیس میگیره و لیست میکنه این هم کدش :
ComboBox2.Items.Clear()
If Connection.State = ConnectionState.Closed Then Connection.Open()
ad = New SqlDataAdapter("Select name From tblkala", Connection)
ds = New DataSet
ad.Fill(ds)
For i As Integer = 0 To ds.Tables(0).Rows.Count - 1
Application.DoEvents()
ComboBox2.Items.Add(ds.Tables(0).Rows(i)(1))
Next i
ComboBox2.DataSource = ds.Tables("tblkala")
Connection.Close()
حالا میخوام آیدی کالای انتخاب شده از combo box رو توی یه label نمایش بدم
لطفا راهنمایی بفرمایید باید چیکار کنم ؟
باتشکر
elham.saedi2014
دوشنبه 29 خرداد 1396, 11:06 صبح
ممنون میشم استاتید سایت کمک کنند
خیلی عججله دارم
باتشکر
mahdi.m.sh
دوشنبه 29 خرداد 1396, 17:31 عصر
سلام
ID کالا داخل همون جدول وجود داره یا باید از جدول دیگه ای خوانده بشه ؟
elham.saedi2014
دوشنبه 29 خرداد 1396, 18:59 عصر
داخل همون جدول وجود داره
elham.saedi2014
سه شنبه 30 خرداد 1396, 12:23 عصر
سلام
واقعا اینقدر سوال من سخته که کسی نمیتونه جوابشو بده ؟
mahdi.m.sh
سه شنبه 30 خرداد 1396, 20:41 عصر
سلام
یه برنامه گذاشتم ، نگاه کنید .
اگر سوالی بود بپرسید.
145555
elham.saedi2014
چهارشنبه 31 خرداد 1396, 00:57 صبح
سلام واقعا ممنونم خیلی لطف کردید .
سلام
یه برنامه گذاشتم ، نگاه کنید .
اگر سوالی بود بپرسید.
SelectID.rar (http://barnamenevis.org/attachment.php?attachmentid=145555&d=1497973260)
اما این کد یه مشکل داره ، اگه دوتا نام تکرار ذخیره شده باشه و آیدی ها متفاوت به مشکل بر میخوره .
من فکر میکنم برا اساس شماره اندیس هر item باید id ها توی یه آرایه ریخته بشه و جستجو بشه اما نمیدونم چطور باید انجامش بدم .
samiasoft
چهارشنبه 31 خرداد 1396, 03:13 صبح
سلام
واقعا اینقدر سوال من سخته که کسی نمیتونه جوابشو بده ؟
:لبخند:نه اتفاقا راحت هست جواب سوالتون...ولی جستجو میکردین به راحتی پیدا میشد.
این دستور رو داخل کمبوباکس بزارید :
Dim cmd As New OleDbCommand connect.Close()
connect.Open()
cmd.CommandText = "select idnumber,name from tblkala WHERE name = '" + ComboBox1.Text + "' "
cmd.Connection = connect
Dim da As OleDbDataReader = cmd.ExecuteReader
If da.Read = True Then
Label1.Text = da.Item(0).ToString
connect.Close()
Exit Sub
End If
راستی دستور نمایش در کموباکس رو اینطور هم میتونی بنویسی
connect.Open()
strsql = "select name from tblkala "
da = New OleDbDataAdapter(strsql, connect)
da.Fill(ds, "tblkala")
ComboBox1.DataSource = ds.Tables("tblkala")
ComboBox1.DisplayMember = "name"
connect.Close()
درمورد خواندن id با دستوری که نوشتیم هربار از دیتابیس بخونه و بهت بده....نظرم اینه وقتی درکموباکس اول نام ها رو لود میکنی همزمان در کمبوباکس دوم هم ایدیها رو لود کنی.....اینطوری دیگه کل ایدیهارو داری و هنگام نمایش از کمبوباکس 2 میتونی نمایش بدی
vBulletin® v4.2.5, Copyright ©2000-1403, Jelsoft Enterprises Ltd.