我有两个数据绑定下拉列表控件。第一个(dropdownlist1)直接从表中提取。第二个(dropdownlist2)也从表中提取,但在其WHERE子句中使用dropdownlist1中的选定值。
用户在dropdownlist1中进行选择后,如何更新/刷新dropdownlist2? (如果用代码完成,则使用VB)
我尝试将dropdownlist1的“自动回发”属性设置为“true”,最终,此方法有效。唯一的问题是,如果我不断更改dropdownlist1中的选择,则dropdownlist2中可用的选项会重复。
两个下拉列表控件都包含在使用模板的CreateUserWizard控件中。我已经尝试在dropdownlist1的SelectedIndexChanged事件中的dropdownlist2上使用FindControl和DataBind(),但是在dropdownlist1中进行选择后没有发生任何变化。
有什么想法吗?
SelectedIndexChanged事件
Protected Sub AssignedManager_SelectedIndexChanged(sender As Object, e As System.EventArgs)
CreateUserWizard1.CreateUserStep.ContentTemplateContainer.FindControl("AssignedSupervisor").DataBind()
End Sub
*上图,AssignedManager是第一个下拉列表,AssignedSupervisor是第二个下拉列表*
答案 0 :(得分:0)
Protected Sub AssignedManager_SelectedIndexChanged(sender As Object, e As System.EventArgs)
CreateUserWizard1.CreateUserStep.ContentTemplateContainer.FindControl("AssignedSupervisor").DataSource
= GetDataSource(Ctype(CreateUserWizard1.CreateUserStep.ContentTemplateContainer.FindControl("FirstDropDownID"),Dropdownlist).SelectedValue)
CreateUserWizard1.CreateUserStep.ContentTemplateContainer.FindControl("AssignedSupervisor").DataBind()
End Sub
Protected function GetDataSource(string id) as DataTable
'This function should return datatable based on the value (id) from the first dropdownlist
End Function