0

我有一个复选框列表,其中包含我的数据库中的条目。我还在页面顶部有一个搜索栏。如何使用搜索栏搜索复选框。我现在正在做的不是将任何内容返回到屏幕,它只是保持在同一个屏幕上。我的复选框列表 ID 是 check1,我的搜索栏 ID 是搜索。因此,单击我的搜索按钮时,我运行以下代码:

check1.Items.FindByText(searchText.Text)

ASP:

<asp:TextBox ID="searchText" placeholder="Search For Customer:" AutoPostBack="true" TextAlign="Right" runat="server" Width="448px"></asp:TextBox>
<asp:Button ID="search" runat="server" text="Search" />

这里有什么问题?谢谢

4

1 回答 1

1

FindByText 返回一个 ListViewItem。

http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.listitemcollection.findbytext.aspx

当您说“它只是保持在同一个屏幕上”时,您的意思是您的列表视图没有更新并且您期望它更新吗?你必须自己处理。

由于您的 lv 已绑定,您可以过滤绑定的数据集并重新绑定它(LINQ 在这里很好),或者您可以调用一个存储过程,该过程将根据该搜索文本返回结果。您将需要使用以下内容:

SELECT  Field1, Field2, FieldN
FROM    Table
WHERE   FieldToSearch LIKE '%' + @searchText + '%'

再次阅读有关您不熟悉的方法、控件等的文档。如果你这样做了,你会看到你只取回了该项目,而不是过滤列表视图。

于 2012-05-14T19:35:34.813 回答