View Full Version : سوال: جستجو در datagridview
morteza10878
دوشنبه 24 اسفند 1388, 22:37 عصر
با سلام
من با این کد جستجو میکنم و مقدارو در داخل textbox میریزم اما چطوری میشه وقتی که مثلا من کاراکتر (م ) را وارد میکنم (البته اطلاعات داخل بانکم ذو قبلا وارد grid کردم ) کلیه نامهایی که اول انها با (م ) شروع میشود را در grid نمایش دهد و به همین صورت تا اخر ادامه پیدا کند تا کلمه مورد نظر پیدا شود
ممنون میشم اگر کدی دارید در اختیارم بذارید
Dim con As New SqlConnection
con.ConnectionString = "Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirector y|\karim.mdf;Integrated Security=True;User Instance=True"
Dim com As New SqlCommand
com.Connection = con
con.Open()
com.CommandText = "select * from k where name like '" + TextBox6.Text + "%'"
Dim reader As SqlDataReader = com.ExecuteReader
reader.Read()
TextBox2.Text = (reader.GetString(1))
TextBox3.Text = (reader.GetString(2))
TextBox4.Text = (reader.GetString(3))
TextBox5.Text = (reader.GetString(4))
con.Close()
End Sub
MahmoudiNik
دوشنبه 24 اسفند 1388, 22:51 عصر
سلام
برای اینکه جستجوی کارکتر بای کارکتر داشته باشید میتونید از یک Dataview که تو toolbox هستش استفاده کنید و اونرو به یک دیتا ست متصلش کنید و بعد به datagrid نصبتش بدید و برای نمایش اطلاعات استفاده کنید.
برای جستجو هم میتونید تو خاصیت textchanged مربوط به تکست باکس از این کد استفاده کنید:
DataView1.RowFilter = "name like '" & txtname.Text & "%'"
اگر بازهم مشکلی بود بگین تا بیشتر توضیح بدم
morteza10878
دوشنبه 24 اسفند 1388, 23:36 عصر
دوست عزیز میخوام از dataview استفاده نکنم مستقیما میخوام با وارد کردن کاراکتر در textbox اطلاعات داخل gird عوض بشه
الان به این صورت تغییر دادم اما نشد نمیدونم مشکل کجاست
Private Sub TextBox6_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox6.TextChanged
Dim con As New SqlConnection
con.ConnectionString = "Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirector y|\karim.mdf;Integrated Security=True;User Instance=True"
Dim dta As New SqlDataAdapter("select * from k where name like '" + TextBox6.Text + "%'", con)
ds = New DataSet
dta.Fill(ds, "k")
datagridview1.AutoGenerateColumns = True
datagridview1.DataSource = "k"
End Sub
kebriya
سه شنبه 25 اسفند 1388, 08:33 صبح
من اینکارو اینجوری انجام میدم که در form load اول ds رو ست میکنم بعد کد زیر رو مینویسم تا datagridview رو بایند کنه
DataGridView1.DataBindings.Add(New Binding("datasource", ds, "tblname"))
اگه میخوای یه نمونه واست بذارم
Maram284558
سه شنبه 25 اسفند 1388, 08:45 صبح
Imports System.Data
Imports System.Data.OleDb
Public Shared CN As New OleDbConnection
Public Shared CMDAs New OleDbCommand
Public Shared Adapter1 As New OleDbDataAdapter
"برقراري ارتباط با ديتا بيس"
DS=NEW DATASET
"عنوان فيلد " HAVING"نام جدول" CMD.CommandText = "SELECT * FROM
(( "' & Like '" & TxtSearch.Text & "%'))
Adapter1.SelectCommand = CMD
(Adapter1.Fill(DS
(DataGridView.DataSource = DS.Tables(0
morteza10878
سه شنبه 25 اسفند 1388, 13:27 عصر
با سلام
من با این کد جستجو میکنم و مقدارو در داخل textbox میریزم اما چطوری میشه وقتی که مثلا من کاراکتر (م ) را وارد میکنم (البته اطلاعات داخل بانکم ذو قبلا وارد grid کردم ) کلیه نامهایی که اول انها با (م ) شروع میشود را در grid نمایش دهد و به همین صورت تا اخر ادامه پیدا کند تا کلمه مورد نظر پیدا شود
ممنون میشم اگر کدی دارید در اختیارم بذارید
kebriya
پنج شنبه 27 اسفند 1388, 08:49 صبح
این فایل رو ببینید بر اساس فیلد lname اینکارو میکنه، هم فارسی هم انگلیسی تست شده
راستی بانکش هم که میدونی باید attach کنی:لبخند:
morteza10878
پنج شنبه 27 اسفند 1388, 21:34 عصر
با سلام به دوست عزیز ممنون زحمت کشیدین
اما فایل رو attach کردم و این پیغام خطا رو میده
karim orooji
شنبه 29 اسفند 1388, 19:31 عصر
دوست عزیز این کمکت میکنه
http://barnamenevis.org/forum/attachment.php?attachmentid=43695&d=1265459383
ali_ahr7
سه شنبه 17 فروردین 1389, 01:24 صبح
سلام در رويداد keypress تكست باكست دستوران جناب maram رو بنويس.
vBulletin® v4.2.5, Copyright ©2000-1403, Jelsoft Enterprises Ltd.