在运行时以编程方式将值添加到下拉列表

uba*_*raf 5 vb.net asp.net

我试图根据其他下拉列表的值更改下拉列表的列表项值.drpAdult的列表值范围为0-9,drpInfant的列表值范围为0-(选择drpAdult的值).

因此,例如,如果我在drpAdult下拉列表中选择5,则drpInfant的列表项值范围将为0-5.

我已经编写了下面的代码,但它没有填充drpInfant下拉列表中的值,我试图在drpAdult_SelectedIndexChanged事件中插入该值.

Protected Sub drpAdult_SelectedIndexChanged(ByVal sender As Object, 
 ByVal e As EventArgs) Handles drpAdult.SelectedIndexChanged  

    Dim count As Integer    
    count = drpAdult.Items.Count
    Dim i As Integer
    i = 0
     While count > 0
        i = i + 1

        drpInfant.Items.Add(New ListItem(i, i))
        count = count - 1

    End While
End Sub
Run Code Online (Sandbox Code Playgroud)

可能导致此问题的原因,我该如何解决?

Tim*_*ter 0

不确定“不起作用”是什么意思,但这似乎更容易:

Dim newCount = drpAdult.Items.Count + 1
For i As Int32 = 0 To newCount
    Dim newItem As New ListItem(i.ToString, i.ToString)
    drpInfant.Items.Add(newItem)
Next
Run Code Online (Sandbox Code Playgroud)