none
Propriete SelectedIndex inexistante dans une DropDownList RRS feed

  • Question

  • Bonjour,

    J'utilise VisualWebDeveloper 2008, et suis confronté à un petit mystère que j'aimerai bien percer.
    Sous l'editeur HTML, il m'est impossible de trouver la proprieté SelectedIndex (ou quelque chose qui s'en rapproche) dans une DropDownList.

    Ma situation : J'ai un gridview qui affiche 2 colonne (branché sur un sqldataSource1).
    A l'edition d'une ligne, j'utilise un template sur la deuxieme colonne, qui se transforme en DropDownList (elle meme branché sur une autre SqlDataSource).
    Jusqu'ici tout fonctionne. A l'edition, j'obtiens bien une DDL dans ma deuxieme colonne.
    Sauf que j'aimerais preselectionner la valeur par la valeur visible en mode lecture.
    Mais ... Impossible de trouver la proprieté SelectedInex (pourtant mentionnée dans plusieurs ouvrages et sur MSDN).

    Pour palier le probleme, j'essaye de setter la selectedValue par programmation, dans l'evenement DataBound (là, c'est bien visible). Par contre, à cet instant, je ne sais plus quelle valeur était issue de mon SqlDataSource1 ...

    SI quelqu'un a déjà été confronté au probleme, je prends :)

    Merci

     

     

     

     

     

    dimanche 25 avril 2010 09:07

Réponses

  • Bon, alors, j'ai trouvé, et j'ai déjà honte de moi.

     

    <asp:DropDownList ID="DropDownList1" runat="server" 
          DataSourceID="SqlDataSource2" DataTextField="id" DataValueField="field2" > 

    en faisant un espace après la double quote finale (apres field2), j'obtiens une liste de propositions sans selectedValue. 

    Ctrl+Espace plus tard ... oh miracle ...

    J'ai honte, désolé.

    Merci de m'avoir répondu ;)

     

    lundi 26 avril 2010 08:50

Toutes les réponses

  • Bonjour,

    la propriété SelectedIndex existe bien sur la DropDownList asp.net il n'est donc pas normal que vous n'y accédiez pas.

    A tout hasard vérifiez qu'il ne vous manque pas une l'attribut runat="server".

    Sinon pouvez vous nous montrer un exmeple de votre code reproduisant le problème ?

    Par ailleurs sélectionner un élément le code suivant est également possible :

    dropDownList1.Items.FindByValue("myValue").Selected = true;
    Cordialement

     

    lundi 26 avril 2010 08:27
    Modérateur
  • Bon, alors, j'ai trouvé, et j'ai déjà honte de moi.

     

    <asp:DropDownList ID="DropDownList1" runat="server" 
          DataSourceID="SqlDataSource2" DataTextField="id" DataValueField="field2" > 

    en faisant un espace après la double quote finale (apres field2), j'obtiens une liste de propositions sans selectedValue. 

    Ctrl+Espace plus tard ... oh miracle ...

    J'ai honte, désolé.

    Merci de m'avoir répondu ;)

     

    lundi 26 avril 2010 08:50