DataGridViewComboBoxColumn différents ! [Résolu]

Messages postés
258
Date d'inscription
jeudi 23 octobre 2003
Dernière intervention
20 mars 2013
- 15 janv. 2013 à 14:19 - Dernière réponse :  NesrineBenSAlah
- 29 mars 2013 à 20:39
Bonjour à toutes et tous,

J'ai un DataGridView, j'ai défini une colonne de type 'DataGridViewComboBoxColumn' et j'ai ajouté 2 lignes.

Je souhaites pouvoir avoir des choix différents selon la ligne où je me trouve !

exemple :
Sur la ligne n°1 avoir les choix 1 - 2 - 3
Sur la ligne n°2 avoir les choix 4 - 5 - 6

Est-ce que cela est possible ?

Actuellement, voici le code que j'utilise :

    DataGridView1.Rows.Clear()
    DataGridView1.Rows.Add("Ligne 1", "")
    DataGridView1.Rows.Add("Ligne 2", "")

    DataGridView1.Rows(0).Cells("Column2").Selected = True
    Column2.Items.AddRange("1", "2", "3")
    DataGridView1.Rows(1).Cells("Column2").Selected = True
    Column2.Items.AddRange("4", "5", "6")


Et le résultat donné est le suivant : sur la ligne 1 ou 2 j'ai le choix entre 1 - 2 - 3 - 4 - 5 - 6 !!!

Par avance merci

Olivier
Afficher la suite 

Votre réponse

5 réponses

Meilleure réponse
Messages postés
423
Date d'inscription
vendredi 17 novembre 2006
Dernière intervention
15 juillet 2014
- 15 janv. 2013 à 15:06
3
Merci
Bonjour,

Il faut faire de cette manière :
DataGridView1.Rows.Clear()
DataGridView1.Rows.Add("Ligne 1", "")
DataGridView1.Rows.Add("Ligne 2", "")

Dim combo As DataGridViewComboBoxCell
combo = CType(Me.DataGridView1.Rows(0).Cells("Column2"), DataGridViewComboBoxCell)
combo.Items.AddRange("1", "2", "3")
combo = CType(Me.DataGridView1.Rows(1).Cells("Column2"), DataGridViewComboBoxCell)
combo.Items.AddRange("4", "5", "6")


Sinon vous ajoutez les items à la colonne et pas à la cellule

Merci foliv57 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 88 internautes ce mois-ci

Commenter la réponse de foliv57
Messages postés
258
Date d'inscription
jeudi 23 octobre 2003
Dernière intervention
20 mars 2013
- 15 janv. 2013 à 15:21
0
Merci
Bonjour foliv57,

En effet, cela fonctionne bien !

J'étais parti sur l'idée mais pas réussi à finaliser !

Merci pour ton aide.

Olivier
Commenter la réponse de guilleto
- 29 mars 2013 à 13:16
0
Merci
Salut à tous ,
j'ai un DAtaGridView dans lequel je veux insérer des donnée . lorsque je clique j'affiche un formulaire et à partir de ce dernier je saisit les données , aprés j'appuie sur le bouton Ajouter . L'ajout se fait sans problème mais l'insertion se fait sur la même ligne de la DataGridView. j'ai pas su comment faire

Voici le code complet :

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace WindowsFormsApplication4
{
    public partial class AjoutAd : Form
    {
        public AjoutAd()
        {
            InitializeComponent();
        }
        public void vider()
        {
            using (FondSocialEntities1 context = new FondSocialEntities1())
            {
             
                PrenomAd.Text = string.Empty;
                NomAd.Text=string.Empty;
                DateNaissAd.Text = string.Empty;
                AdresseAd.Text = string.Empty;
                NbEnf.Text = string.Empty;
                numAdmin.Text = string.Empty;
                DateTitu.Text = string.Empty;
                Poste.Text = string.Empty;
                salaire.Text = string.Empty;
            }
        }
        private void pictureBox1_Click(object sender, EventArgs e)
        {

        }

        private void annuler_Click(object sender, EventArgs e)
        {
            this.Close();
            ListeAD liste = new ListeAD();
            liste.Show();
        }

        private void valdier_Click(object sender, EventArgs e)
        {
            using (FondSocialEntities1 context = new FondSocialEntities1())
            {
                try
                {

                    Adhérent adh = new Adhérent();
                    adh.Prenom_Ad = PrenomAd.Text;
                    adh.Nom_Ad = NomAd.Text;
                    adh.Date_Naiss = Convert.ToDateTime(DateNaissAd.Text);
                    adh.adr = AdresseAd.Text;
                    adh.Nb_Enf = Convert.ToInt32(NbEnf.Text);
                    adh.Num_Admin = Convert.ToInt32(numAdmin.Text);
                    adh.Date_Titu = Convert.ToDateTime(DateTitu.Text);
                    adh.Nom_Post = Poste.Text;
                    adh.Salaire = Convert.ToInt32(salaire.Text);
                    

                    context.AddToAdhérent(adh);
                    context.SaveChanges();
                    
                    MessageBox.Show("وقعت إضافة العضو");
                    vider();


                }

                catch (Exception e1)
                {

                    MessageBox.Show("لم تقع الإضافة");


                }
                






            }




        }

        private void button1_Click(object sender, EventArgs e)
        {
            vider();
            PrenomAd.Select();

        }

        private void PrenomAd_TextChanged(object sender, EventArgs e)
        {
            
        }
    }
}



Merci de m'aider c'est à propos de mon PFE et j'arrive pas à avancer . C'est urgent Merci
Commenter la réponse de NesrineBenSAlah
- 29 mars 2013 à 19:29
0
Merci
Bonjour,

Merci de m'aider c'est à propos de mon PFE et j'arrive pas à avancer . C'est urgent Merci


Nous, on s'en sacre que ce soit ton PFE et que ce soit urgent. Nos urgences à nous, c'est déjà assez. Et puis ce qui est vraiment urgent pour toi c'est d'apprendre à mettre tes questions en C aiguisé ailleurs que dans le forum VB.
Commenter la réponse de Utilisateur anonyme
- 29 mars 2013 à 20:39
0
Merci
c'est très gentil ! Merci
Commenter la réponse de NesrineBenSAlah

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.