Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - .NET

Страница: 1 |

 

  Вопрос: Автопоиск в таблице Добавлено: 19.07.07 12:19  

Автор вопроса:  mandrew
Братцы... помогите! Никак не могу реализовать функцию поиска и позиционирования строки в bindingsource по нажатию клавиш.. а-ля 1С без ввода текста в какой ни будь конирол. Нашел такое вот решение:

Private Sub DataGridView1_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles DataGridView1.KeyPress

  Static KeysPressed As String

  Static LastKeyPress As Date

  'if more than 2 seconds has passed, clear the string

  If DateDiff(DateInterval.Second, LastKeyPress, Now) >= 2 Then

    KeysPressed = CStr(e.KeyChar)

  Else

    KeysPressed += CStr(e.KeyChar)

  End If

  LastKeyPress = Now

  'to see the typed string: Label1.Text = KeysPressed

  Dim dg As DataGridView = CType(sender, DataGridView)

  Dim DS As DataSet = CType(BindingSource1.DataSource, DataSet)

  Dim FieldNameToSearch As String = "StLastName"

  BindingSource1.Position = BindingSource1.Find(DS.Tables(0).Columns(FieldNameToSearch).ToString, KeysPressed)

End Sub


 но беда в том что FIND в Bindinge ишет только полное соответствие. Как реализовать поиск по части слова?

Ответить

  Ответы Всего ответов: 3  

Номер ответа: 1
Автор ответа:
 EUGY



Вопросов: 0
Ответов: 454
 Профиль | | #1 Добавлено: 19.07.07 23:30
 Если бы не Net, то можно было бы занести в массив все искомые строки, и написать собственную функцию Find, в которой InStr по каждому элементу массива. Ну а поскольку это Net, надо искать, после какого бы объекта поставить точку и какой бы элемент использовать в intellisence.
,-)

Ответить

Номер ответа: 2
Автор ответа:
 BUMM ®



Вопросов: 8
Ответов: 482
 Профиль | | #2 Добавлено: 20.07.07 02:17
но беда в том что FIND в Bindinge ишет только полное соответствие. Как реализовать поиск по части слова?

попробуй через filter, в фильире можно использовать символы jolly и даже оператор LIKE

Ответить

Номер ответа: 3
Автор ответа:
 mandrew



Вопросов: 1
Ответов: 1
 Профиль | | #3 Добавлено: 20.07.07 16:14
нашел решение через создание combobox и его функцию поиска в списке. Если интересно вечером выложу код.

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам