User 13790648 Ответов: 1

Как показать вложенные элементы в виде списка


Я использую visual studio 2012 express. У меня есть форма с полосой меню, 2 радиокнопками и списком. То, что я хочу сделать, - это когда radiobutton2 проверен, listview заполняется некоторыми числами и типом (string). Я уже делал нечто подобное в другом проекте, но в этом проекте это не работает. Я прочитал о том, какие настройки должны быть установлены в listview, чтобы он работал, и я установил их (см. Все ссылки). Я предпочитаю, чтобы сначала отображалась переменная "Card#", а затем тип. Если я попытаюсь запустить код сейчас, то получу только 1 заполненный столбец, а другой всегда будет пустым.

Что я уже пробовал:

Это код, который не работает!

<pre>
Private Sub RadioButton2_CheckedChanged(sender As Object, e As EventArgs) Handles RadioButton2.CheckedChanged
        Dim CardType As String = Nothing
        Dim tmpStr As String = Nothing

        RadioButton2.Font = IIf(RadioButton2.Checked = True, New Font(RadioButton2.Font, FontStyle.Bold), New Font(RadioButton2.Font, FontStyle.Regular))

        If RadioButton2.Checked = True Then
            ComboBox1.Items.Clear()
            ComboBox1.Text = Nothing
            ComboBox1.Enabled = False
            ListView1.Enabled = True

            For x As Integer = 1 To NumberOfCards
                tmpStr = Trim(Mid(MyCard(x, 1, 1), 5, 1))
                CardType = Microsoft.VisualBasic.Switch(tmpStr = "D", "Deleted", tmpStr = "H", "Hard", tmpStr = "S", "Special")
                If tmpStr <> "D" Then
                    Dim wrditem As New ListViewItem
                    wrditem.Text = Str(x)
                    wrditem.SubItems.Add(CardType)
                    ListView1.Items.Add(wrditem.Text)
                End If
            Next
        End If

    End Sub


Вот что я получаю, когда запускаю код:
Бегу Form.jpg - Google Диск[^]

Richard MacCutchan

Было бы более разумно показать фактический код, в котором есть проблема, и точно объяснить, что происходит не так. Тем более что все ваши URL-адреса недействительны (все они указывают на эту страницу).

1 Ответов

Рейтинг:
8

Richard MacCutchan

ListView1.Items.Add(wrditem.Text)

Вы добавляете только текст нового элемента ListViewItem, а не весь элемент целиком. Так и должно быть:
ListView1.Items.Add(wrditem)


Maciej Los

Ястребиный глаз!

Richard MacCutchan

Ха-ха, это я обычно скучаю по таким вещам.

Maciej Los

Я тоже ;)