如何:在 DataRepeater 控件中搜索数据 (Visual Studio)
更新:2007 年 11 月
当使用包含大量记录的 DataRepeater 控件时,您可能会希望允许用户搜索特定的记录。与在控件自身中搜索数据不同,您可以通过查询底层的 BindingSource 来实现搜索。如果找到了项,便可以使用 CurrentItemIndex 属性来选择该项并将它滚动到视图中。
实现搜索
从“工具箱”中将 TextBox 控件拖到包含 DataRepeater 控件的窗体中。
在“属性”窗口中,将“Name”属性更改为“搜索文本框”。
从“工具箱”中将 Button 控件拖到包含 DataRepeater 控件的窗体中。
在“属性”窗口中,将“Name”属性更改为“搜索按钮”。将“Text”属性更改为“搜索”。
双击 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 替换为您的 DataRepeater 的 BindingSource 的名称,并将 ProductID 替换为要搜索的字段的名称。
请参见
任务
DataRepeater 控件疑难解答 (Visual Studio)
如何:更改 DataRepeater 控件的外观 (Visual Studio)
概念
DataRepeater 控件简介 (Visual Studio)
参考
修订记录
日期 |
修订 |
原因 |
---|---|---|
2008 年 7 月 |
新增主题。 |
SP1 功能更改。 |