2015-09-17 1 views
0

Je le menu déroulantne marche pas Dropdown régler la valeur DataSet comme choisi

<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> 

suivante Et je veux définir sa valeur 'Selected' à celle que je reçus de la base de données. Mais il ne le définit pas à ces valeurs au lieu de rester à son option sélectionnée par défaut. Je reçois le résultat dans ma source de données, mais il reste à --Select-- au lieu des deux autres valeurs (Local, Expatriate)

Voilà comment je suis essayer:

ddlResident.SelectedValue = ddlResident.Items.FindByValue(IIf(IsDBNull(ds.Tables(0).Rows(0).Item("Resident")), 0, ds.Tables(0).Rows(0).Item("Resident"))).Value 
+0

Avez-vous ajouté 'AutoPostback =" True "' pour 'ddl'? Je demande, parce que dans votre code manquant cela ... ' nelek

Répondre

0
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 

Cela définira la valeur à l'élément "Résident" ou si cela est NULL ou vide, il définira le ddl au 1er élément (Select) ... bien que basé sur votre code ci-dessus, il utilisera toujours la 1ère ligne ... qui peut ou ne peut pas soyez ce que vous voulez ... cela dépend du nombre d'enregistrements renvoyés par votre jeu de données.