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 :

pb valeur null dans dropdownlist


Sujet :

ASP.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    114
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 114
    Par défaut pb valeur null dans dropdownlist
    Salut

    J'ai parcouru tous les topics concernant ce problème dans les forums, mais quand j'ai une valeur null dans ma base (Access), ma DropDownlist plante, avec toujours ce même message d'erreurs :

    'cmbprojet' a un SelectedValue qui n'est pas valide, car il n'existe pas dans la liste des éléments.
    Nom du paramètre : value
    Pourtant j'ai ajouté un élément vide en début de liste :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
                ((DropDownList)FormView1.FindControl("cmbprojet")).Items.Insert(0, new ListItem("Choisir...", null));
    çà fonctionne parfaitement, mais dès que je binde ma liste, le message d'erreur apparaît. C'est incompréhensible...
    Merci d'avance

  2. #2
    Rédacteur
    Avatar de lutecefalco
    Profil pro
    zadzdzddzdzd
    Inscrit en
    Juillet 2005
    Messages
    5 052
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : zadzdzddzdzd

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 052
    Par défaut
    Fais voir le code où tu bindes ta ddl

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    114
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 114
    Par défaut
    voici le code (désolé, mais j'ai été interrompu hier...)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
                    <asp:DropDownList ID="cmbprojet" runat="server" DataSourceID="ads_projet" DataTextField="proj"
                        DataValueField="num" OnSelectedIndexChanged="cmbprojet_SelectedIndexChanged"
                        Style="z-index: 108; left: 150px; position: absolute; top: 111px" Width="84px" OnDataBinding="cmbprojet_DataBinding" OnPreRender="cmbprojet_PreRender" SelectedValue='<%# Bind("projet") %>'>

  4. #4
    Rédacteur
    Avatar de lutecefalco
    Profil pro
    zadzdzddzdzd
    Inscrit en
    Juillet 2005
    Messages
    5 052
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : zadzdzddzdzd

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 052
    Par défaut
    Mets:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    SelectedValue='<%# Bind("num") %>'

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    114
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 114
    Par défaut
    Merci de me répondre si vite.
    Je n'ai pas précisé que cette DDL se trouve dans un Formview, elle est bindée sur le champ du Datasource du Formview qui s'appelle "projet". Les champs qui apparaissent dans le code que j'ai montré correspondent à la Datasource de la DDL, où le champ correspondant à celui du "Bind" s'appelle "Num", car il provient d'une autre table (c'est la clé primaire).
    Non, le problème viendrait apparemment de la différence de traitement de la valeur "null" aentre Access et VS2005. Sous access, à un champ vide est automatiquement attribué la valeur "null". Par contre, dans ma DDL, si je mets comme SelectedValue "null" (avec mon insert[0]):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ((DropDownList)FormView1.FindControl("cmbprojet")).Items.Insert(0, new ListItem("Choisir...", null));
    ...il ne fait pas la coresspondance.
    Bizarre, qu'est que tu en penses ? serait-ce un bug de l'appli ? Personnellement, j'en ai déjà "subi"...
    De toutes façons, ma DDL non bindée fonctionne prfaitement, dès que je la binde.

  6. #6
    Rédacteur
    Avatar de lutecefalco
    Profil pro
    zadzdzddzdzd
    Inscrit en
    Juillet 2005
    Messages
    5 052
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : zadzdzddzdzd

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 052
    Par défaut
    C'est "bizarre" de lui passer null comme valeur, passe lui plutot "-1" ou "0"

Discussions similaires

  1. Comment gérer les valeur Nulles dans une requête ?
    Par sondo dans le forum Bases de données
    Réponses: 3
    Dernier message: 16/03/2005, 11h02
  2. Affcecter une valeur NULL dans une requete paramétrée
    Par thiouwz2 dans le forum Bases de données
    Réponses: 7
    Dernier message: 05/11/2004, 15h02
  3. [delphi 7 / DOA] valeur null dans setvariable
    Par delphim dans le forum Bases de données
    Réponses: 1
    Dernier message: 05/11/2004, 10h14
  4. ASP et valeur NULL dans requêtes SQL
    Par chuck_m dans le forum ASP
    Réponses: 7
    Dernier message: 13/08/2004, 11h15
  5. Passer une valeur Null dans un argument de procédure
    Par preempalver dans le forum VBA Access
    Réponses: 5
    Dernier message: 30/12/2003, 20h52

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