如何在从组合框中选择时显示列表视图组中的项目
本文关键字:列表 显示 视图 项目 选择 组合 | 更新日期: 2023-09-27 17:59:45
我正试图在列表视图中显示组中的项目,我的意思如下。我在表单中添加了一个列表视图,在列表视图中添加了两个组,然后添加了项目,并为这些项目选择了组名。
现在,在一个组合框中,我将其添加到所选的已交换事件中。
if (comboBox1.Text == "group1")
{
foreach (string itemname1 in listimages.Groups[0].Items)
{
string currentitem = itemname1;
}
}
什么都不起作用,所以我正在努力找出我做得不对的地方。
组合框中的项目与组名称具有相同的项目。
任何帮助都会很棒。
我想明白了。以下是我做的
首先在列表视图上我添加了组,然后我添加了项目,在Tag属性中的项目上,我将其放入我希望链接到的组中。
在组合框中,当我将组名添加到列表视图中时,我输入了组名。
然后我添加了这个代码:
private void frmImageSelection_Load(object sender, EventArgs e)
{
items = new ListViewItem[listimages.Items.Count];
listimages.Items.CopyTo(items, 0);
ShowGroup(0);
cmbgroups.SelectedIndex = 0;
}
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
ShowGroup(cmbgroups.SelectedIndex);
}
void ShowGroup(int index)
{
if (index == 0) // all
{
listimages.Items.Clear();
listimages.Items.AddRange(items);
}
else
{
listimages.Items.Clear();
foreach (ListViewItem item in items)
if (listimages.Groups[index].Name.Equals(item.Tag))
listimages.Items.Add(item);
}
foreach (ListViewItem item in listimages.Items)
item.Group = listimages.Groups[index];
}
ListViewItem[] items;
不管怎样,如果你不确定我会很乐意帮你的,只要在我的收件箱里给我发条消息什么的。