0

私はモバイルプロジェクトに取り組んでいます、そして私はこれを持っています:

  1. 検索テキストボックス(fillbyメソッド)
  2. コンボボックス(データにバインド)
  3. データグリッド

私はこれを行うことができます:

fillbyメソッドを使用してテキストボックスに検索クエリを入力すると、データグリッドに適切な行が表示されます。

私はこれについて助けが必要です:

コンボボックスで同じデータをフィルタリングします。Add Queryメソッド(fillbyメソッド)をコンボボックスに使用すると、別のテキストボックス検索クエリが作成されます。私はそれを望んでいません。コンボボックスでデータグリッドをフィルタリングできるようにしたい。

ComboBoxSubのコードは次のとおりです。

    Private Sub CityComboBox_SelectedValueChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles CityComboBox.SelectedValueChanged

    Dim RestIDShort As Short       'primary key
    Dim RestDataRow As DataRow     'complete data row of selected value
    Dim RestDataRows As DataRow()  'holding the data

    Try

        'get the restID for the selected city
        RestIDShort = Convert.ToInt16(CityComboBox.SelectedValue)

        'find the row from the table for the selected city
        RestDataRow = RestaurantEateriesDataSet.RestaurantTable.FindByRestID(RestIDShort)

        'Grab the variables here. Don't really need them.  Just to see if I can pull data.

        'NameStringShow = RestDataRow("Name")
        'FoodTypeStringShow = RestDataRow("FoodCat")
        'CityStringShow = RestDataRow("City")

        'test to see if we can write to screen
        'successfully wrote this to the screen onload but not on combobox change
        'TextBox1.Text = NameStringShow

        'retrieve the array for the selected data row
        'not sure if this is how to call when there is only one table????
         RestDataRows = RestDataRow.GetChildRows("RestaurantTable")

        'fill the datagrid with the array of selected value rows
        'I don't know how to do this part:   


    Catch ex As Exception
        MessageBox.Show(ex.Message)
    End Try

    End Sub   

(必要に応じて)呼び出すことができるクエリを作成しました。クエリはテキストボックスで呼び出すと機能するので、コンボボックスで呼び出す方法がある場合は、選択したフィールドをデータグリッドに表示します。。。すべてが良いでしょう。

どんな助けでも、大いに感謝します。

4

1 に答える 1

0
Private Sub bttnFilter Click(...) Handles bttnFilter.Click
    Dim filter As String
    filter = InputBox("Enter product name, or part of it")
    ProductsBindingSource.Filter = "ProductName LIKE '%" & filter.Trim & "%'"
End Sub

同じことがコンボボックスにも適用されます。フィルターの代わりに、combobox1.selectedItem() を使用します。
これは検索の基本です。他に質問がありましたら、お気軽にどうぞ。

于 2012-05-05T15:05:12.127 に答える