C# Windows Формы, как получить элементы ListView - PullRequest
0 голосов
/ 14 января 2020

Я пытаюсь создать строку с элементами из ListView в C# (Windows Forms). У меня есть два столбца и более сотни трех чисел git в моем ListView. Значения указывают, на каких осях X и Y была моя мышь. Но как только я пытаюсь вывести значения, например, в текстовом поле, появляются только последние значения X и Y, остальные игнорируются. Что я пробовал:

listView1.Items[a].SubItems[0].Text
int.Parse(listView1.Items[a].SubItems[0].Text)

возможно, у кого-то есть предложение

Ответы [ 3 ]

1 голос
/ 14 января 2020

Вам нужно перебрать элементы и подпункты следующим образом:

foreach (ListViewItem item in listView1.Items)
{
    Debug.WriteLine($"Item: {item.Text}");

    foreach (ListViewItem.ListViewSubItem subitem in item.SubItems)
    {
        Debug.WriteLine($"\tSubitem:{subitem.Text}");
    }
}
1 голос
/ 14 января 2020

Вы используете al oop для своих вещей? Непонятно, откуда взято a. Вы также можете использовать al oop для своих подпунктов. Вы можете l oop через все элементы и подпункты, как это:

for (int i = 0; i < listView1.Items.Count; i++)
{
    for (int k = 0; k < listView1.Items[i].SubItems.Count; k++)
    {
        string s = listView1.Items[i].SubItems[k].Text;
    }
}
0 голосов
/ 14 января 2020

спасибо за вашу помощь, ребята, единственное, чего не хватает, это l oop и эта строка Value += Environment.NewLine +

ваши предложения сработали

            foreach (ListViewItem item in listView1.Items)
            {
                Value += Environment.NewLine + item.Text;

                foreach (ListViewItem.ListViewSubItem subitem in item.SubItems)
                {
                    Value += Environment.NewLine + subitem.Text;
                }
            }

и

            for (int i = 0; i < listView1.Items.Count; i++)
            {
                for (int k = 0; k < listView1.Items[i].SubItems.Count; k++)
                {
                    Value += Environment.NewLine + listView1.Items[i].SubItems[k].Text;
                }
            }


Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...