PDA

View Full Version : تایپ کردن در کمبو و پیدا کردن مرودهای مشابه



m3raj_3
دوشنبه 05 دی 1390, 11:21 صبح
سلام
من تو دیتا کمبو 100 تا نام ریختم
میخوام وقتی طرف مینویسه توش" د" اونوقت تمام د ها بیاد فقط ،بعد وقتی مینویسه "ده" تمام "ده" ها بیاد و مثلا نام دهقانی
توروخدا کمک
کامل بگید خواهشا
خیلی ممنون

Hybrid
دوشنبه 05 دی 1390, 11:39 صبح
سلام دوست عزیز این کد رو که براتون نوشتم رو استفاده کنین همه چی درست میشه !!! (البته این مربوط به بانکه اگه شما از بانک اطلاعاتی استفاده میکنین از مد زیر استفاده کنین) ... دقیق منظورتون رو بگین..منظورتون از دیتا کامبو همون کامبو باکسه؟؟؟


Public Function Search(ByVal TableName As String, ByVal FieldName As String, ByVal searchFor As Object) As DataTable
oledbConnection1.Close()
Dim Da As New OleDbDataAdapter
Da.SelectCommand = New OleDbCommand
Da.SelectCommand.Connection = oledbConnection1
Da.SelectCommand.Connection.ConnectionString = oledbConnectionString
Da.SelectCommand.CommandType = CommandType.Text
Da.SelectCommand.CommandText = "select * from " & TableName & " where " & FieldName & " Like '%" & searchFor & "%'"

If Da.SelectCommand.Connection.State <> ConnectionState.Open Then
Da.SelectCommand.Connection.Open()
End If

Da.SelectCommand.ExecuteNonQuery()

Dim dt As New DataTable
Da.Fill(dt)
Return dt
End Function


البته کانکشن وکانکشن استرینگ رو خودتو مقادیرشون رو بدین....یعنی از کانکشن و کانکشن استرینگ خودتون به جای ماله من استفاده کنین.

موفق باشین.

Hybrid
دوشنبه 05 دی 1390, 12:11 عصر
حالت دوم :

شما از یه کامبو باکس استفاده میکنین و داخل اون کامبو باکس مثلا 100 تا اسم دارین و میخواین وقتی که اول یه اسم رو وارد میکنین تمام نام هایی که اولشون او حرف هست رو در کامبو باکس نشون بده برای این کار به ترتیب مراحل زیر رو برو تا به جوابت برسی...

1)یه کامبو باکس رو روی فرمت قرار بده .

2) نام ها رو در خصوصیت AutoCompleteCustomSource قرار بده (این خصوصیت یه کالکشن هست که میتونین برای ذخیره نام هاتون استفاده کنین)

3)خصوصیت AutoCompleteMode رو برابر Suggest قرار بدین.

4) خصوصیت AutoCompleteSource رو برابر CustonSource قرار بدین..

موفق باشین.

m3raj_3
دوشنبه 05 دی 1390, 13:37 عصر
سلام دوست عزیز این کد رو که براتون نوشتم رو استفاده کنین همه چی درست میشه !!! (البته این مربوط به بانکه اگه شما از بانک اطلاعاتی استفاده میکنین از مد زیر استفاده کنین) ... دقیق منظورتون رو بگین..منظورتون از دیتا کامبو همون کامبو باکسه؟؟؟


Public Function Search(ByVal TableName As String, ByVal FieldName As String, ByVal searchFor As Object) As DataTable
oledbConnection1.Close()
Dim Da As New OleDbDataAdapter
Da.SelectCommand = New OleDbCommand
Da.SelectCommand.Connection = oledbConnection1
Da.SelectCommand.Connection.ConnectionString = oledbConnectionString
Da.SelectCommand.CommandType = CommandType.Text
Da.SelectCommand.CommandText = "select * from " & TableName & " where " & FieldName & " Like '%" & searchFor & "%'"

If Da.SelectCommand.Connection.State <> ConnectionState.Open Then
Da.SelectCommand.Connection.Open()
End If

Da.SelectCommand.ExecuteNonQuery()

Dim dt As New DataTable
Da.Fill(dt)
Return dt
End Function


البته کانکشن وکانکشن استرینگ رو خودتو مقادیرشون رو بدین....یعنی از کانکشن و کانکشن استرینگ خودتون به جای ماله من استفاده کنین.

موفق باشین.

اره دوست عزیر همون کامبو باکسی که اطلاعاتش رو از دیتا بیت پر میکنم
یعنی تو فرم لودم مینویسم که هر چی نام کاربری هست بریز توی کومبو باکس و میخوامتا طرف تایپمیکنه همینجوری پشت هم توکامبا باکس نشنونش بده و بره رو همون نامی که داره تایپ میکنه

Hybrid
دوشنبه 05 دی 1390, 17:01 عصر
سلام دوست عزیز ،



Da.SelectCommand = New OleDbCommand("select groupid,name,description from [groups]", Connection.oledbconnection1)
If Da.SelectCommand.Connection.State <> ConnectionState.Open Then
Da.SelectCommand.Connection.Open()
End If
Da.SelectCommand.ExecuteNonQuery()

Dim ds As New DataSet
Da.Fill(ds, "groups")
ComboBox1.DataSource = ds.Tables("groups")
ComboBox1.DisplayMember = "name"
ComboBox1.ValueMember = "groupid"

من این کد رو قبلا نوشتم برای پر کردن کامبوباکس و نتیجه هم گرفتم فقط شما باید کمی خلاقیت نشون بدین و اطلاعاتش رو بر اساس سلیقه خوتون تغییر بدین..

برای جواب سوال دومتون هم میتونین بعد از اینکه این کار رو انجام دادین از پست سوم استفاده کنین..

موفق باشین