下拉列表未将 DataSet 值设置为 Selected

Dropdown doesnt set DataSet value as Selected

我有以下下拉列表

    <asp:dropdownlist id="ddlResident" runat="server" Width="150px" Height="16px">
       <asp:ListItem Value="-999">--Select--</asp:ListItem>
       <asp:ListItem Value="Local">Local</asp:ListItem>
       <asp:ListItem Value="Expatriate">Expatriate</asp:ListItem>
    </asp:dropdownlist>

我想将其 'Selected' 值设置为我从数据库收到的值。但它不会将其设置为这些值,而是保留其默认的 Selected 选项。我确实在我的数据源中得到了结果,但它仍然在 --Select-- 而不是其他两个值(LocalExpatriate

我就是这样尝试的:

ddlResident.SelectedValue = ddlResident.Items.FindByValue(IIf(IsDBNull(ds.Tables(0).Rows(0).Item("Resident")), 0, ds.Tables(0).Rows(0).Item("Resident"))).Value
If String.IsNullOrEmpty(ds.Tables(0).Rows(0).Item("Resident")) = False Then
    ddlResident.SelectedValue = ds.Tables(0).Rows(0).Item("Resident")
Else
    ddlResident.SelectedIndex = 0
End If

这会将值设置为项目 "Resident",或者如果它为 NULL 或为空,它将把 ddl 设置为第一项 (Select)... 尽管基于您上面的代码它将始终使用第一行...这可能是也可能不是您想要的...取决于您的数据集返回的记录数。