ComboBox dans un DataGridView [Résolu]

pkmnlio 28 Messages postés lundi 24 octobre 2005Date d'inscription 30 décembre 2007 Dernière intervention - 12 déc. 2007 à 13:42 - Dernière réponse : rgso 10 Messages postés mardi 16 novembre 2010Date d'inscription 30 juin 2011 Dernière intervention
- 30 juin 2011 à 15:52
Bonjour,

J'utilise une procedure stockee pour remplir mon datagridview.
Je le rempli donc directement par le code avec la propriete datasource, et en definnisanat chaque colonne.
J'aimerai que l'une de ces colonnes soit un ComboBox, pour me permettre de modifier la valeur d'un champ d'une de mes tables par le value du combobox.
Comment puis-je faire pour creer par le code pour que les cellule d'une collone soient des combobox ?
Pour les remplir avec un value et un texte je devrais pouvoir y arriver mais si vous pouvez me le dire sa m'aiderai un peu.

Merci d'avance
Lionel
Afficher la suite 

Votre réponse

3 réponses

Meilleure réponse
pkmnlio 28 Messages postés lundi 24 octobre 2005Date d'inscription 30 décembre 2007 Dernière intervention - 12 déc. 2007 à 15:01
3
Merci
Merci pour ta reponse mais je travaille en winforms, bien que je vais devoir sans doute utiliser ceci dans ma prochaine appli ASP.

Sinon, j'ai finalement trouver comment creer mon combobox et j'ai pus y inserer les valeurs voulues.

DataGridViewComboBoxColumn comboxColonne = new DataGridViewComboBoxColumn();
            dataGridViewClient.Columns.Add(comboxColonne);
           
                comboxColonne.DataSource = new G_Clients(connexionSQLServer).Lire("nid");
                comboxColonne.DisplayMember = "sVillecplt";
                comboxColonne.ValueMember = "nidLocalite";
                comboxColonne.HeaderText = "Localite";
                comboxColonne.DisplayIndex = 8;

Il me reste malgré tout un probleme, le DisplayIndex ne fonctionne pas pour cette element. (pas tres grave je m'arengerai autrement).

Le principal est que je voudrais que le champ selectionne au chargement une valeur definie qui serait ici le "nidLocalite" correspondant a l'enregistrement.
Comment puis-je faire cela ?
Le champ ne reconais pas le SelectedIndex

Merci pkmnlio 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 92 internautes ce mois-ci

Commenter la réponse de pkmnlio
gilletcsteph 39 Messages postés samedi 31 janvier 2004Date d'inscription 22 mai 2008 Dernière intervention - 12 déc. 2007 à 14:53
0
Merci
Salut,


Pour qu'une colonne contienne une liste, il faut que ta colonne soit un Template et non pas un Champ directement relié au données.
Après, tu peut modifier le contenu du template avec "modifier les Templates" dans le designer, ou dans la page aspx :

<asp:TemplateField>








<
ItemTemplate
>






<
asp
:
DropDownList
ID
="maliste"



runat
="server">
</
aspDropDownList
>






</
ItemTemplate
>






</
asp
:
TemplateField
>



Pour remplir ta liste, utilise la méthode onRowDataBound (lorsqu'une ligne est relié au donnée) ou onDataBound (lorsque ton contrôle est lié au données) selon ton besoin.

Steph
Commenter la réponse de gilletcsteph
rgso 10 Messages postés mardi 16 novembre 2010Date d'inscription 30 juin 2011 Dernière intervention - 30 juin 2011 à 15:52
0
Merci
salu, pouvez vous me dire comment puis je faire cela en vb? j'ai une datagridview où j'ai mis un combobox que je veux remplir à partir une requete sql, mais j'arrive pas à le faire sur vb, je suis perdue dans le code :(
Commenter la réponse de rgso

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.