IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ASP.NET Discussion :

DDL le selectedValue qui select pas


Sujet :

ASP.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre expérimenté
    Avatar de zooffy
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Août 2004
    Messages
    3 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : Bâtiment

    Informations forums :
    Inscription : Août 2004
    Messages : 3 895
    Par défaut DDL le selectedValue qui select pas
    Bonjour tout le monde.

    Je suis devant un cas qui doit être simple, mais je trouve pas d'explication.

    J'ai posé une DDL dans le HTML et dans le code Behind je la rempli comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    With ddl
                .DataSource = dtParagraphe
                .DataTextField = "Para_Titre"
                .DataValueField = "ParagrapheId"
                .DataBind()
                .SelectedValue = "41907689-BE56-48BC-A3C9-6CFAEC5CCA68"
            End With
    J'ai vérifié que la chaine est bien présente dans le retour de la table.

    Là, je devrais avoir le troisième Item de sélectionné et j'ai le premier.

    Et je comprends pas pourquoi.

    Vous pouvez m'aider ?

  2. #2
    Membre Expert
    Avatar de Nicolas Esprit
    Homme Profil pro
    Consultant en technologies
    Inscrit en
    Février 2010
    Messages
    1 467
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en technologies
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2010
    Messages : 1 467
    Par défaut
    Bonjour,

    Après le DataBind() as-tu essayé ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    ListItem _matchingItem = ddl.FindByValue("41907689-BE56-48BC-A3C9-6CFAEC5CCA68");
    if(_matchingItem != null)
         _matchingItem.Selected = true;
    Ou au cas où :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    ListItem _matchingItem = ddl.FindByValue("41907689-BE56-48BC-A3C9-6CFAEC5CCA68");
    if(_matchingItem != null)
        ddl.SelectedValue =  _matchingItem.Value;
    En espérant t'avoir aidé.

  3. #3
    Membre expérimenté
    Avatar de zooffy
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Août 2004
    Messages
    3 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : Bâtiment

    Informations forums :
    Inscription : Août 2004
    Messages : 3 895
    Par défaut
    Merci pour ton aide.

    Je n'ai pas de FindByValue de disponible sur la DDL, je ne peux pas appliquer ton idée. Ne serait ce pas un truc exclusif au C# ?

  4. #4
    Membre éprouvé
    Inscrit en
    Septembre 2007
    Messages
    1 137
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 137
    Par défaut
    ET si tu passes par selectedItem ?

  5. #5
    Membre expérimenté
    Avatar de zooffy
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Août 2004
    Messages
    3 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : Bâtiment

    Informations forums :
    Inscription : Août 2004
    Messages : 3 895
    Par défaut
    Citation Envoyé par tortuegenie Voir le message
    ET si tu passes par selectedItem ?
    Cette propriété est rEadOnly, donc impossible de lui attribuer une valeur.

  6. #6
    Membre Expert
    Avatar de Nicolas Esprit
    Homme Profil pro
    Consultant en technologies
    Inscrit en
    Février 2010
    Messages
    1 467
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en technologies
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2010
    Messages : 1 467
    Par défaut
    Citation Envoyé par zooffy Voir le message
    Je n'ai pas de FindByValue de disponible sur la DDL, je ne peux pas appliquer ton idée. Ne serait ce pas un truc exclusif au C# ?
    Non c'est simplement que j'ai écris le code vite fait en live. Pour être plus précis il faut faire DropDownList.Items.FindByValue().

  7. #7
    Membre expérimenté
    Avatar de zooffy
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Août 2004
    Messages
    3 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : Bâtiment

    Informations forums :
    Inscription : Août 2004
    Messages : 3 895
    Par défaut
    Ok Nicolas, je comprends mieux maintenant.

    Alors en VB.NET ça donne ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    Dim _matchItem As ListItem = ddl.Items.FindByValue("41907689-BE56-48BC-A3C9-6CFAEC5CCA68")
            If _matchItem IsNot Nothing Then
                ddl.SelectedValue = _matchItem.Value
            End If
    Mais l'ennui c'est que, dans cette formulation là ou dans l'autre, ça Select toujours pas.

    Pas d'erreur, le code passe bien, j'ai bien comrpis le principe et l'idée, mais ça select pas, que dalle, il reste sur la première entrée.

    Je ne sais plus quoi faire.

  8. #8
    Membre Expert
    Avatar de Nicolas Esprit
    Homme Profil pro
    Consultant en technologies
    Inscrit en
    Février 2010
    Messages
    1 467
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en technologies
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2010
    Messages : 1 467
    Par défaut
    Ceci fonctionne très bien, je viens de tester :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <asp:DropDownList ID="ddl" runat="server" />
    et le code-behind :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    List<Test> lst = new List<Test>();
    lst.Add(new Test(){Name="Test1", Value="Test1"});
    lst.Add(new Test(){Name = "Test2", Value = "Test2" });
    lst.Add(new Test(){Name="Test3", Value="Test3"});
     
    ddl.DataSource = lst;
    ddl.DataTextField = "Name";
    ddl.DataValueField = "Value";
    ddl.DataBind();
     
    ddl.SelectedValue = "Test2";
    Ton Guid il stocké sous forme de string dans ta DataSource ou bien sous forme de Guid ?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 7
    Dernier message: 25/01/2012, 11h29
  2. Select qui marche pas dans variable
    Par sawyer20 dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 15/08/2006, 15h06
  3. qu'est ce qui va pas dans cette fonction???
    Par access001 dans le forum PostgreSQL
    Réponses: 3
    Dernier message: 18/04/2006, 13h10
  4. [VB6] [Système] Icones du systray qui veulent pas partir
    Par Ctof dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 07/10/2002, 09h41
  5. Sysdate qui marche pas ??
    Par StouffR dans le forum Langage SQL
    Réponses: 4
    Dernier message: 28/08/2002, 13h23

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo