現在、私のアプリケーションは式で RowFilter プロパティを使用して、DataView 内のユーザー定義文字列を検索しています。現在、私のコードは次のようになっています。
Public Class MyClass
Private custView As DataView
Private Sub form_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
dsDataSet = <"DataAccessLayer call to SQL Stored Procedure">
custView = New DataView(dsDataSet.Tables(0))
custView.Sort = "Column Name"
Me.C1FlexGrid1.DataSource = custView
End Sub
Private Sub txtSearch_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSearch.TextChanged
Dim searchText As String = txtSearch.Text
Dim expression As String = "Column Name LIKE '" + searchText + "%'"
custView.RowFilter = expression
Me.C1FlexGrid1.DataSource = custView
End Sub
End Class
私の目標は、検索結果に一致しない行を除外するのではなく、すべての行を表示したままにして、ユーザーが検索ボックスに入力したときに部分一致の最初のインスタンスにジャンプするように、この動作を変更することです。DataView.Find() がワイルドカードをサポートしていれば設定されますが、残念ながらそうではありません。