我有一个 ListBox 填充了一些项目,在SelectedIndexChanged
事件中我倾向于删除任何现有的额外列(ID 1和更大),之后,我创建一个新的列和重新添加项目,但之前的项目保持不变,就像Add()
重载不起作用,这是我的代码:
if (listBox1.SelectedItems.Count > 0)
{
if (listView2.Columns.Count > 1)
{
int bla = listView2.Columns.Count;
for (int i = 1; i < bla; i++)
{
//MessageBox.Show("Removing Column: " + (bla - i));
listView2.Columns.RemoveAt(bla - i);
}
}
if (clmnnum[listBox1.SelectedIndex] == 1)
{
listView2.SuspendLayout();
listView2.Columns.Add("Primary Values", 90, HorizontalAlignment.Left);
listView2.ResumeLayout();
listView2.Items[0].SubItems.Add(exp[listBox1.SelectedIndex].ToString());
listView2.Items[1].SubItems.Add(hpe[listBox1.SelectedIndex].ToString());
listView2.Items[2].SubItems.Add(lve[listBox1.SelectedIndex].ToString());
listView2.Items[3].SubItems.Add(stre[listBox1.SelectedIndex].ToString());
listView2.Items[4].SubItems.Add(powe[listBox1.SelectedIndex].ToString());
listView2.Items[5].SubItems.Add(ende[listBox1.SelectedIndex].ToString());
}
}
ListBox包含与每个数组中的项目一样多的数据(clmnnum,exp,hpe等...)
答案 0 :(得分:1)
我不完全确定这里的问题是什么,你说添加重载似乎没有工作但你说问题是旧项目仍然存在,至少我认为&#39 ; s你的意思是&#34;以前的项目保持不变。&#34;
如果我理解你的目的是什么,我会鼓励你清除listView2的项目,并且每次都可以按照你的意愿建立listView2。
至少应该让你知道发生了什么。