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 :

Liste déroulante avec dataSet et valeur par défaut [Débutant]


Sujet :

ASP.NET

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    37
    Détails du profil
    Informations personnelles :
    Âge : 32
    Localisation : France, Finistère (Bretagne)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 37
    Points : 36
    Points
    36
    Par défaut Liste déroulante avec dataSet et valeur par défaut
    Bonjour à tous,

    Je réalise une application en ASP.NET VB.NET et voici ma situation :
    - j'ai 3 listes déroulantes liées entre elles
    - le remplissage de ces listes se fait quand l'index a été changé. Ces listes sont remplies avec un dataSet

    Maintenant mon problème :
    - si j'ai besoin de prendre le tout premier élément de ma liste, je dois sélectionner un autre élément puis sélectionner mon premier élément. Cela est embêtant et pas du tout intuitif.
    Est-il possible de rajouter une valeur par défaut au tout début de ma liste du genre ---- Sélectionner la catégorie ---- ?

    Dans l'attente de votre aide,

    Kylia

  2. #2
    Membre éprouvé
    Homme Profil pro
    Architecte technique
    Inscrit en
    Septembre 2005
    Messages
    462
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 462
    Points : 1 056
    Points
    1 056
    Par défaut
    Salut,

    Après avoir bindé ta dropdownlist :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    dropDownList.Items.Insert(0, "------Je suis la valeur de bas------")
    Insert
    - Le premier paramètre "0" est l'index. Ici j'insert ma valeur au début.

    sinon :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
            Dim newListItem As ListItem
            newListItem = New ListItem("Text", "Value")
            newListItem.Selected = True
            dropDownList.Items.Add(newListItem)

    Bon code

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    37
    Détails du profil
    Informations personnelles :
    Âge : 32
    Localisation : France, Finistère (Bretagne)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 37
    Points : 36
    Points
    36
    Par défaut
    Salut Katkiller,

    Ta première solution ne fonctionne pas. Quand je l'ajoute après le dataBind, je n'ai que cette ligne là qui apparait.
    Voilà ma fonction avec la quelle je crée le dataSet, qui est une classe :
    Imports Oracle.DataAccess.Client

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    Public Class MethodesCategorie
        Dim base As BaseDeDonnees
     
        Public Function dataSetCategorie() As DataSet
            base = New BaseDeDonnees
            base.connexionBDD()
            Dim reqCategories As String = "SELECT cat_id, cat_nom FROM categorie ORDER BY cat_id ASC"
            Dim cmdCategories As New OracleCommand(reqCategories)
            cmdCategories.CommandType = CommandType.Text
            cmdCategories.Connection = base.chaineConnexion()
     
            Dim adapt As OracleDataAdapter = New OracleDataAdapter
            adapt.SelectCommand = cmdCategories
     
            Dim mesCategories As DataSet = New DataSet
            adapt.Fill(mesCategories)
     
            Return mesCategories
        End Function
    End Class
    Et voilà la méthode qui affiche mes éléments dans la liste déroulante qui se trouve dans le code behind de ma page aspx :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
        Public Sub afficherCategorie()
            Dim monDataSet As DataSet = mesMethodes.dataSetCategorie
            listeCategories.DataSource = monDataSet
            listeCategories.DataValueField = "CAT_ID"
            listeCategories.DataTextField = "CAT_NOM"
            listeCategories.DataBind()
            listeCategories.Items.Insert(0, "---- Sélectionner la catégorie ----") 'Ligne qui ne fonctionne pas
        End Sub
    Pour ta deuxième solution j'essaye de la mettre en place, bien que j'ai un peu de mal avec mes objets.

    EDIT :
    Je n'ai rien dis, la première solution fonctionne très bien. Le problème venait du fait que j'ai voulu créer le dataSet à l'aide de l'outil graphique et que cela ne fonctionne pas, l'assistant de configuration de source de données reste vide alors que mes tables apparaissent correctement dans l'explorateur de serveurs.

    Merci pour ton aide

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

Discussions similaires

  1. Dataset et valeur par défaut dynamique
    Par Jamming Ed dans le forum C#
    Réponses: 2
    Dernier message: 11/01/2012, 10h35
  2. [AC-2007] liste deroulante avec toutes les valeurs par défaut
    Par alexlb dans le forum IHM
    Réponses: 2
    Dernier message: 02/02/2010, 14h39
  3. Réponses: 13
    Dernier message: 22/10/2008, 15h21
  4. [XHTML] Liste-déroulante : comment changer la ligne par défaut ?
    Par Delphine.4 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 7
    Dernier message: 21/08/2007, 12h23
  5. liste déroulante, requête SQL et valeur par défaut
    Par flukie dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 02/06/2006, 11h59

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