J'ai une liste déroulante que je lie à un datatable. Voici le code que je utilise pour le faire:Pourquoi dropdownlist.SelectedIndex = la valeur peut-elle échouer?
ddlBuildAddr.DataSource = buildings
ddlBuildAddr.DataTextField = "buildingName"
ddlBuildAddr.DataValueField = "buildingId"
Dim addressId As Int32 = OfficeData.GetInstance().GetBuildingId(currentAddress)
ddlBuildAddr.SelectedIndex = addressId
ddlBuildAddr.DataBind()
Malheureusement, la ligne ddlBuildAddr.SelectedIndex = addressId
échoue. En regardant cette ligne à travers le débogueur, le SelectedIndex
va à -1, alors que addressId
va à 2. Qu'est-ce qui se passe? Pourquoi l'opérateur d'affectation ne fonctionnerait-il pas?
Erreur stupide, vous avez raison! Cependant, l'état selectedindex ne change pas. –
Avez-vous vérifié que la liste déroulante est réellement remplie de quelque chose? Essayez de commenter la ligne pour définir l'index et vérifiez que des éléments sont chargés dans la liste. En outre, comme d'autres l'ont suggéré, vous souhaitez probablement définir la propriété SelectedValue. – TLiebe
Oui c'est. Je l'ai fait et tout est bien rempli :) –