使用组合框将listview项替换为另一个列表

时间:2018-01-24 15:35:26

标签: vb.net listview combobox

原谅vb.net是新手。我有一个组合框和列表视图。我需要的是当我在组合框中更改类别并按下“确定”时,之前添加的旧列表将被新列表替换。

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click

    Dim i As ListViewItem

    If ComboBox1.Text = "Terrestrial Ecotoxicity (Freshwater)" Then

        i = ListView1.Items.Add("Water")
        i.SubItems.Add("2068.030567")
        i.SubItems.Add("0")
        i.SubItems.Add("0")

    ElseIf ComboBox1.Text = "Terrestrial Ecotoxicity (Seawater)" Then

        i = ListView1.Items.Add("Dimethylamine")
        i.SubItems.Add("1229.539887")
        i.SubItems.Add("0.000122731")
        i.SubItems.Add("0.15090266")

    End if

End Sub

我需要添加什么?

1 个答案:

答案 0 :(得分:0)

您正在做的是在每个案例中添加不同的行。您要求的是根据您在组合框中选择的项目,在列表视图中填入不同的项目。

基本上,您需要清除每个案例的列表视图。我做这样的事情:

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click 
    Dim i As ListViewItem

    ListView1.Items.Clear
    If ComboBox1.Text = "Terrestrial Ecotoxicity (Freshwater)" Then 
        i = ListView1.Items.Add("Water")      
        i.SubItems.Add("2068.030567") 
        i.SubItems.Add("0") 
        i.SubItems.Add("0") 
    ElseIf ComboBox1.Text = "Terrestrial Ecotoxicity (Seawater)" Then 
        i = ListView1.Items.Add("Dimethylamine")
        i.SubItems.Add("1229.539887")
        i.SubItems.Add("0.000122731")
        i.SubItems.Add("0.15090266") 
    End if 
End Sub