У меня есть 2 списка в форме Windows и 2 кнопки в середине этих полей. один показывает направо другой показывает налево. что я хочу сделать, так это когда я выбираю некоторые элементы, скажем, в списке1 и нажимаю правую кнопку отображения, я хочу скопировать элементы, которые я выбрал в списке1, в список 2 с теми же индексами, где я выбрал их в 1. Я могу сделать это, однако я не могу скопировать пустые строки. Вот как выглядят мои списки (я добавил числа, чтобы легко отслеживать строки здесь).
ListBox1 Listbox2
1. u a
2.
3. l c
4. b
5. m e
6. f
7. n >>(right button)
8. c
9. z <<(left button) t
10. q
11. s
12.
13. g b
теперь в этих полях, если я выберу любой элемент с текстом на нем и нажму кнопку, он скопирует элементы в другой список. но если я выберу любую строку без текста, любую пустую строку и нажму кнопку, это ничего не изменит. это не сделает другой элемент коробки пустым. вот код, как я копирую строки.
private void button4_Click(object sender, EventArgs e)
{
List<int> selectedItemIndexes = new List<int>();
foreach (string o in listBox1.SelectedItems)
selectedItemIndexes.Add(listBox1.Items.IndexOf(o));
for (int i = 0; i < selectedItemIndexes.Count; i++)
{
listBox2.Items[selectedItemIndexes[i]] = listBox1.Items[selectedItemIndexes[i]];
}
selectedItemIndexes.Clear();
}
private void button3_Click(object sender, EventArgs e)
{
List<int> selectedItemIndexes = new List<int>();
foreach (object o in listBox2.SelectedItems)
selectedItemIndexes.Add(listBox2.Items.IndexOf(o));
for (int i = 0; i < selectedItemIndexes.Count; i++)
{
listBox1.Items[selectedItemIndexes[i]] = listBox2.Items[selectedItemIndexes[i]];
}
selectedItemIndexes.Clear();
}
как я могу также скопировать пустые строки?