我有一个网络更新表单,其中每个控件都是同一个表的属性。它应该这样工作:每当我从主(第一个)下拉列表中选择一个值时,应该运行一个查询来获取所有字段(属性)并根据我选择的值填充其他控件。
事件代码:
Protected Sub DropDownList1_SelectedIndexChanged(ByVal sender As Object, ByVal e As EventArgs) Handles DropDownList1.SelectedIndexChanged
Dim objModel As New ModelDAO ' the data access class taht contains search method
Dim myobject = objModel.searchObject(DropDownList1.Text)
TextBox1.Text = myobject.Property2
DropDownList2.SelectedValue = myobject.Property3 'what's wrong here?
End Sub
控制:
<asp:DropDownList ID="DropDownList1" runat="server" AppendDataBoundItems="True"
DataSourceID="SqlDataSource1" DataTextField="MODEL" DataValueField="MODEL"
AutoPostBack="true" OnSelectedIndexChanged="DropDownList1_SelectedIndexChanged">
<asp:ListItem Text="-Select-" Value="" />
</asp:DropDownList>
<asp:DropDownList ID="DropDownList2" runat="server">
<asp:ListItem Value="0">-Select-</asp:ListItem>
<asp:ListItem>EDS</asp:ListItem>
<asp:ListItem>BDS</asp:ListItem>
</asp:DropDownList>
除了第二个 DropDownList 之外,它可以工作,我不知道如何更改选定的值,我试过这个:
DropDownList2.Text = myobject.Property3
和这个:
DropDownList2.SelectedValue = myobject.Property3
但在这两种情况下 dropdownlist2 都没有显示选定的项目。
注意:由于 textbox.text 确实获得了正确的值,我认为搜索方法没有任何问题,这就是我不发布它的原因。