Cellule de datagridview

Signaler
Messages postés
45
Date d'inscription
mercredi 15 novembre 2006
Statut
Membre
Dernière intervention
7 décembre 2010
-
Messages postés
2
Date d'inscription
mercredi 10 février 2010
Statut
Membre
Dernière intervention
9 avril 2010
-
Bonjour,

Je voudrais lorsque l'utilisateur entre dans une cellule de datagridview de type string qu'il n'en sorte pas tant qu'il n'a pas rempli la cellule.


Pourriez vous m'aider car je ne vois pas comment faire.


Merci d'avance

6 réponses

Messages postés
380
Date d'inscription
samedi 22 janvier 2005
Statut
Membre
Dernière intervention
13 août 2011
7
tu a l'evenement CellValueChanged da la datagridview
si tu veux que la valeaur soir changé sur la column 2

private void dataGridView1_CellValueChanged(object sender, DataGridViewCellEventArgs e)
{
    //la faut verifier que la valeur a ete mofiér ( pas vide )
}
Messages postés
45
Date d'inscription
mercredi 15 novembre 2006
Statut
Membre
Dernière intervention
7 décembre 2010

Merci mais cela ne m'a pas réslu mon probleme

Ce que je veut c'est dès que l'on clique sur une cellule, la cellule prend le curseur et on ne peut pas sortir de cette cellule tant que l'on a pas saisi quelque chose

pour les colonne de type float ou int cela le fait bien automatiquement mais pas pour les cellule de type string.


On peut biensur sortir de la cellule si on appui sur Echap et ainsi sa annule la ligne.

Auriez vous d'autre pistes j'arrête pas de chercher mais je ne trouve pas

Merci d'avance.
Messages postés
792
Date d'inscription
mardi 8 juillet 2003
Statut
Membre
Dernière intervention
12 juillet 2019
8
Bonjour,

As-tu essayé la perte de focus de ta cellule?


louis
Messages postés
45
Date d'inscription
mercredi 15 novembre 2006
Statut
Membre
Dernière intervention
7 décembre 2010

Non je n'ai pas essayé mais je ne vois pas l'évènement qui gère le focus pour une cellule

Auriez vous une idée sur cet évènement?

Merci d'avance
Messages postés
792
Date d'inscription
mardi 8 juillet 2003
Statut
Membre
Dernière intervention
12 juillet 2019
8
Bonjour,
en cherchant dans MSDN , j'ai trouvé
public event DataGridViewCellEventHandler CellLeave
ou
public event DataGridViewCellStateChangedEventHandler CellStateChanged

je pense que tu devrais approndir dans cette voie.
louis14
Messages postés
2
Date d'inscription
mercredi 10 février 2010
Statut
Membre
Dernière intervention
9 avril 2010

slt
Voici un exemple de code

public void Remplir_Liste(string select, DataGridView V)
{
string chaine = "" + connex.ConnectionString + "";
SqlConnection con = new SqlConnection(chaine);
DataSet D = new DataSet();
SqlDataAdapter adapte;
DataRow[] DR;
D.Clear();
V.Rows.Clear();
adapte = new SqlDataAdapter(select, con);
adapte.Fill(D, "article");
DR = D.Tables["article"].Select();

for (int i = 0; i < DR.Length; i++)
{
V.Rows.Add();
V.Rows[i].Cells[0].Value = DR[i]["reference"].ToString();
V.Rows[i].Cells[1].Value = DR[i]["designation"].ToString();
V.Rows[i].Cells[2].Value = DR[i]["famille"].ToString();
V.Rows[i].Cells[3].Value = DR[i]["stock_alerte"].ToString();
V.Rows[i].Cells[4].Value = DR[i]["type_piece"].ToString();
V.Rows[i].Cells[5].Value = DR[i]["nature_piece"].ToString();
V.Rows[i].Cells[6].Value = DR[i]["quantite"].ToString();
V.Rows[i].Cells[7].Value = DR[i]["fournisseur"].ToString();
V.Rows[i].Cells[8].Value = DR[i]["prix_achat_HT"].ToString();
V.Rows[i].Cells[9].Value = DR[i]["prix_achat_TTC"].ToString();
V.Rows[i].Cells[10].Value = DR[i]["marge"].ToString();
V.Rows[i].Cells[11].Value = DR[i]["prix_vente_TTC"].ToString();
V.Rows[i].Cells[12].Value = DR[i]["prix_vente_HT"].ToString();
V.Rows[i].Cells[13].Value = DR[i]["TVA"].ToString();
}
}
private void Listes_des_Produits_Load(object sender, EventArgs e)
{
A.Remplir_Liste("select * from article",dataGridView1);

}