8

如何隐藏或折叠某些组ListView

我只是添加一些项目

contactListView.Items.Add(new ISIMlistViewItem(contact));
if (contact.availability == 6)
    contactListView.Items[contact.identificator].Group = contactListView.Groups["offlineGroup"];
else
    contactListView.Items[contact.identificator].Group = contactListView.Groups["onlineGroup"];

而且我有时想隐藏offlineGroup.

if (hideOffline == true)
{
    // something like
    contactListView.Groups["offlineGroup"].Hide();
    // or
    contactListView.Groups["offlineGroup"].Visible = false;
}

但我不知道我该怎么做。我可以折叠它而不绘制它还是有可能隐藏它?

4

1 回答 1

6

ListViewGroup该类的 .NET 版本似乎没有提供CollapseorExpand方法。

幸运的是,本机ListView控件确实支持它,并且有人提供了一个扩展来启用 expand 和 collapse

使用他的代码,您可以使用以下功能设置展开/折叠状态:

private void SetGroupCollapse(GroupState state)

为了隐藏一个完整的组,我只需删除该组中的所有项目。

于 2012-09-16T09:10:20.730 回答