Я хочу изменить содержимое 2-го столбца каждой строки в ListView
с различными данными в соответствии с, найденным через FindItemWith
.
Моя проблема в том, что из 2-й строки происходит переопределение предыдущих столбцов, например, когда я хочу изменить содержимое, поиск текста, который остается в первой строке, работает нормально, см .:
Уже, когда я хочу изменить содержимое, ища текст, который остается во второй строке, это происходит:
Это код:
public void fillData(string search, string data, ListView haystack)
{
if (haystack.Items.Count > 0)
{
int idx = 0;
ListViewItem found;
while (idx < haystack.Items.Count)
{
found = haystack.FindItemWithText(search, true, idx);
if (found != null)
{
haystack.Items[idx].SubItems[1].Text = data.ToString();
}
idx++;
}
}
}
private void button3_Click(object sender, EventArgs e)
{
int i = 0;
while (i < 3)
{
ListViewItem item = new ListViewItem();
item.Text = i.ToString();
item.SubItems.Add("192.168.0." + i.ToString());
listView1.Items.Add(item);
i++;
}
}
private void button1_Click(object sender, EventArgs e)
{
fillData("192.168.0.0", "AAA", listView1);
}
private void button2_Click(object sender, EventArgs e)
{
fillData("192.168.0.1", "BBB", listView1);
}