如何:在 DataRepeater 控件中搜索数据 (Visual Studio)
当使用包含大量记录的 DataRepeater 控件时,您可能会希望允许用户搜索特定的记录。 与在控件自身中搜索数据不同,您可以通过查询底层的 BindingSource 来实现搜索。 如果找到了项,便可以使用 CurrentItemIndex 属性来选择该项并将它滚动到视图中。
实现搜索
从**“工具箱”**中将 TextBox 控件拖到包含 DataRepeater 控件的窗体中。
在“属性”窗口中,将**“Name”**属性更改为 SearchTextBox。
从**“工具箱”**中将 Button 控件拖到包含 DataRepeater 控件的窗体中。
在“属性”窗口中,将**“Name”属性更改为 SearchButton。 将“Text”**属性更改为 Search。
双击 Button 控件打开代码编辑器,并将下面的代码添加到 SearchButton_Click 事件处理程序中。
Private Sub SearchButton_Click() 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 替换为您的 DataRepeater 的 BindingSource 的名称,并将 ProductID 替换为要搜索的字段的名称。
请参见
任务
DataRepeater 控件疑难解答 (Visual Studio)
如何:更改 DataRepeater 控件的外观 (Visual Studio)