1

我正在尝试在 ObjectListView 控件上创建一些搜索机制。根据文档,这可以通过向控件添加 TextMatchFilter 来完成:

this.olv1.ModelFilter = TextMatchFilter.Contains(this.olv1, "search");

执行此行后,olv1 将仅显示在该行的至少一个单元格中出现文本“搜索”的行。

这是我到目前为止所做的:

private void textBoxSearch_TextChanged(object sender, EventArgs e)
{
    projectObjectListView.ModelFilter = TextMatchFilter.Contains(projectObjectListView, toolStripTextBox_search.Text);
}

每当我在我的文本框中键入时,TextMatchFilter 都会设置为我的 ObjectListView。我已将所有列设置为可搜索,但是当我开始输入时,什么也没有发生。该事件按应有的方式触发,并且过滤器被设置为 OLV 模型过滤器,但没有反应。有人遇到过同样的问题吗?

4

1 回答 1

4

您必须将 上的UseFiltering属性设置ObjectListView为 true,否则 OLV 将忽略任何分配的ModelFilter.

要对列表启用过滤,您必须将 UseFiltering 设置为 true。为确保向后兼容,默认为 false。

资源

于 2013-12-03T20:15:11.577 回答