PDA

View Full Version : جستجو بر روی جدول



یک شنبه 16 شهریور 1382, 19:05 عصر
سلام
من یک DataSet دارم که با یک dataAdapter پر می شه، و Grid فرمم هم به یک DataView ارتباط داره و این DataView و DataSet هم به همدیگر.
حالا می خوام بر اساس فیلدهای مختلف عمل جستجو رو انجام بدم بطوری که هر بار که کاربر مقداری رو وارد می کنه اشاره گر روی اولین فیلدی که با اون حروف شروع می شه قرار بگیره.
می خواستم بدونم بهترین روشی ( از نظر سرعت ) برای این کار، چه روشی هست ؟

دوشنبه 17 شهریور 1382, 16:48 عصر
یعنی هیچ راهی وجود نداره :!: :(

linux
دوشنبه 17 شهریور 1382, 18:27 عصر
من با .net بلد نیستم
ولی با ado
دستور search هست
هلپشو بخون

S.Azish
سه شنبه 18 شهریور 1382, 13:53 عصر
این ADO.Net واقعآ مسخره شده چون این کار به سادگی با ADO انجام میشد. من این سوال رو برای Microsoft فرستادم به محض اینکه جوابی بیاد میذارمش اینجا.

Abbas Arizi
سه شنبه 18 شهریور 1382, 15:03 عصر
فعلا تا وقتی که جواب این سوال پیدا بشه فکر کنم بهتر باشه که به جای استفاده از متد Find در DataView خودتون تک تک آیتمها رو مرور کنید و جستجو رو به این روش انجام بدید.

S.Azish
سه شنبه 18 شهریور 1382, 18:42 عصر
در نهایت انجام شد



Private cm As CurrencyManager


Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'
Dim dv As DataView

SqlDataAdapter1.Fill(DataSet1, "Test")
dv = DataSet1.Tables("test").DefaultView
DataGrid1.DataSource = dv
cm = CType(Me.BindingContext(dv), CurrencyManager)
'
End Sub


Private Sub Form1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Click
'
Dim row() As DataRow
Dim fieldNameToSearch As String = "TestField"

With DataSet1.Tables("test")
row = .Select(fieldNameToSearch & " Like '" & InputBox("") & "%'")
If Not row Is Nothing Then
With .DefaultView
.Sort = fieldNameToSearch
cm.Position = .Find(row(0).Item(fieldNameToSearch))
End With
End If
End With
'
End Sub

چهارشنبه 19 شهریور 1382, 21:18 عصر
از لطف شما خیلی خیلی متشکرم.