Asp.net 用户控件状态中的ASP NET下拉框
我在ASP NET web应用程序中有一个usercontrol,我在该应用程序上根据一些加载的数据(通过BIN目录中的组件从XML文件)创建下拉列表 我发现我无法在回发中检索到这些值,我一直在做大量的阅读来找出原因。我希望有人解释为什么会出现以下情况:Asp.net 用户控件状态中的ASP NET下拉框,asp.net,vb.net,Asp.net,Vb.net,我在ASP NET web应用程序中有一个usercontrol,我在该应用程序上根据一些加载的数据(通过BIN目录中的组件从XML文件)创建下拉列表 我发现我无法在回发中检索到这些值,我一直在做大量的阅读来找出原因。我希望有人解释为什么会出现以下情况: Dim dd As New DropDownList With dd .Items.Add(New ListItem("First Item")) .Items.Add(New ListItem("Second Item")) .I
Dim dd As New DropDownList
With dd
.Items.Add(New ListItem("First Item"))
.Items.Add(New ListItem("Second Item"))
.Items.Add(sts(0))
.Items.Add(sts(1))
.Items.Add(sts(2))
.Items.Add(New ListItem("Third Item"))
End With
AddHandler dd.SelectedIndexChanged, AddressOf changed
divControls.Controls.Add(dd)
在上面的代码中,三项“第一项”、“第二项”和“第三项”的行为都正确,正如您可以看到的,它们直接添加到代码中的下拉框中。sts(0)、sts(1)和sts(2)项都从XML文件加载到数组或字符串列表中
有趣的是,sts(0)总是正确地发回,但是从动态源添加的任何后续项都不正确。我已经尝试了很多方法将我的字符串列表放到下拉列表中,以便它们在回发时仍在那里,但我运气不好,如果有人能对此有所了解,我将不胜感激。我想出来了-我需要给每个列表项赋予一个值,我只是懒洋洋地编写了文本部分,因为我没有在列表中使用序号,但ASP NET需要序号值或列表项值来注册该项以进行事件验证,我希望ASP NET只能为字符串数组或列表中的后续项提供与集合中所有其他成员相同的序号或listitem值,因为它们来自同一对象。现在工作 我想出来了-我需要给每个列表项一个值,我只是懒洋洋地编码了文本部分,因为我没有在列表中使用序号,但是ASP NET需要序号值或列表项值来注册该项以进行事件验证,我希望ASP NET只能为字符串数组或列表中的后续项提供与集合中所有其他成员相同的序号或listitem值,因为它们来自同一对象。现在工作