Share via


方法 : DataRepeater コントロールでデータを検索する (Visual Studio)

更新 : 2008 年 7 月

大量のレコードが含まれる DataRepeater コントロールを使用しているとき、ユーザーが特定のレコードを検索できるようにすることが必要になる場合があります。コントロール自体でデータを検索するのではなく、基になる BindingSource にクエリを実行することで検索を実装できます。項目が見つかったら、CurrentItemIndex プロパティを使用してその項目を選択し、スクロールして表示できます。

検索を実装するには

  1. DataRepeater コントロールを含んでいるフォームに、ツールボックスから TextBox コントロールをドラッグします。

  2. [プロパティ] ウィンドウで Name プロパティを SearchTextBox に変更します。

  3. DataRepeater コントロールを含んでいるフォームに、ツールボックスから Button コントロールをドラッグします。

  4. [プロパティ] ウィンドウで Name プロパティを SearchButton に変更します。Text プロパティを Search に変更します。

  5. Button コントロールをダブルクリックしてコード エディタを開き、SearchButton_Click イベント ハンドラに次のコードを追加します。

    Private Sub SearchButton_Click(ByVal sender As System.Object, ByVal e As  _
      System.EventArgs) Handles SearchButton.Click
        Dim foundIndex As Integer
        Dim searchString As String
        searchString = SearchTextBox.Text
        foundIndex = ProductsBindingSource.Find("ProductID", _
         searchString)
        If foundIndex > -1 Then
            DataRepeater1.CurrentItemIndex = foundIndex
        Else
            MsgBox("Item " & searchString & " not found.")
        End If
    End Sub
    
    private void searchButton_Click(System.Object sender, System.EventArgs e)
    {
        int foundIndex;
        string searchString;
        searchString = searchTextBox.Text;
        foundIndex = productsBindingSource.Find("ProductID", searchString);
        if (foundIndex > -1)
        {
            dataRepeater1.CurrentItemIndex = foundIndex;
        }
        else
        {
            MessageBox.Show("Item " + searchString + " not found.");
        }
    }
    

    ProductsBindingSource を DataRepeaterBindingSource の名前で置き換え、ProductID を検索するフィールドの名前で置き換えます。

参照

処理手順

DataRepeater コントロールのトラブルシューティング (Visual Studio)

方法 : DataRepeater コントロールの外観を変更する (Visual Studio)

概念

DataRepeater コントロールの概要 (Visual Studio)

参照

DataRepeater

変更履歴

日付

履歴

理由

2008 年 7 月

トピックを追加

SP1 機能変更