Datagrid checkbox

Signaler
Messages postés
84
Date d'inscription
jeudi 1 mars 2007
Statut
Membre
Dernière intervention
22 juin 2007
-
Messages postés
3
Date d'inscription
jeudi 2 décembre 2010
Statut
Membre
Dernière intervention
9 février 2011
-
Bonjour,
Je voulais savoir s il était possible d ajouter une checkbox à un datagrid connecté à une base de données?
si oui, comment?
merci

Sabine

9 réponses

Messages postés
3466
Date d'inscription
lundi 16 octobre 2000
Statut
Modérateur
Dernière intervention
30 octobre 2008
44
Salut,

Oui bien sur c'est possible, DataGrid ou DataGridView ?
Pour un DataGridView, il suffit d'ajouter une instance de DataGridViewCheckBoxColumn à sa collection de colonnes (ou tu peux aussi le faire avec le designer de Visual Studio).
Pour un DataGrid, c'est un DataGridBoolColumn a ajouter a son TableStyle. Voir l'exemple de seb ici ou de ludinski ici

Mx
MVP C# 
Messages postés
84
Date d'inscription
jeudi 1 mars 2007
Statut
Membre
Dernière intervention
22 juin 2007

Merci beaucoup pour ta réponse, je l ai fais avec le designer de VS en 2 secondes, trop chouette ;-)
Sab
Messages postés
84
Date d'inscription
jeudi 1 mars 2007
Statut
Membre
Dernière intervention
22 juin 2007

Bonjour,
maintenant que j ai fais ma checklist dans mon datagrid view, je voudrais que lorsque je sélectionne un ou plusieurs user, je puisse les supprimer de ma base de données en cliquant sur un bouton!
pour cela, j 'ai fais ceci:
 private

void button2_Click(
object sender,
EventArgs e)

        
foreach(
DataGridViewRow row
in dataGridView1.Rows)
         {
               
if (row.Cells[4].Selected)
                {
                       // toute la connection avec la suppression
                 }
         }
          dataGridView1.Update();

}

Donc la suppression marche mais ca me supprime les enregistrements de la ligne ou la cellule contenant la chexhbox est sélectionné, alors que moi je veux les enregistrements de ou des lignes ou la checkbox est coché!
de plus quand je fais le update il met pas à jour desuite, quand on quitte et qu on revient sur le datagrid il est mis a jour, alors moi je voudrais le mettre a jour instantanément!

Merci d avance pour votre aide

Sabine
Messages postés
3466
Date d'inscription
lundi 16 octobre 2000
Statut
Modérateur
Dernière intervention
30 octobre 2008
44
Salut,

Oui, en fait ce n'est pas la propriété Selected, mais la propriété Value

DataGridViewCheckBoxCell cell = (DataGridViewCheckBoxCell)row.Cells[4];
if(cell.Value = cell.TrueValue)
{
   // ...
}

Mx
MVP C# 
Messages postés
84
Date d'inscription
jeudi 1 mars 2007
Statut
Membre
Dernière intervention
22 juin 2007

j ai cette erreur:
Error 1 Cannot implicitly convert type 'object' to 'bool'. An explicit conversion exists (are you missing a cast?) C:\Visual Studio\MPL_WebSite\MPL_WebSite\Menu.cs 199 21 MPL_WebSite

je comprends pas vraiment où est l erreur!
Sabine
Messages postés
3466
Date d'inscription
lundi 16 octobre 2000
Statut
Modérateur
Dernière intervention
30 octobre 2008
44
J'ai juste oublié un '=' dans la comparaison...
A remplacer par '=='

Mx
MVP C# 
Messages postés
84
Date d'inscription
jeudi 1 mars 2007
Statut
Membre
Dernière intervention
22 juin 2007

oui en effet ç'était le == qui allait pas!
mais ce que je comprends pas c est qu en aillant changer simplement

DataGridViewCheckBoxCell cell = (DataGridViewCheckBoxCell)row.Cells[4];
if(cell.Value == cell.TrueValue)
{
   // ...
}

j ai une erreur "ORA-01008: not all variables bound" alors que tout a l heure quand je sélectionnais simplement ma cellule ca marchait!
est ce qu au niveau du paramétrage c est ca:

DataConnection m =
new
DataConnection();

OracleConnection conn =
null;
conn = m.DoConnection();

// create command
// command for DELETE
OracleCommand cmd = conn.CreateCommand();

// commande for COMMIT
OracleCommand cmd2 = conn.CreateCommand();
cmd.CommandText =
"DELETE FROM user_mpl where login=:parm1 and password=:parm2";

// use to save data in the database
cmd2.CommandText =
"COMMIT";

OracleParameter myParameter1 =
new
OracleParameter(
":parm1",
OracleType.VarChar,30);
myParameter1.Value = row.Cells[0].Value;

OracleParameter myParameter2 =
new
OracleParameter(
":parm2",
OracleType.VarChar, 30);
myParameter2.Value = row.Cells[1].Value;

// add parameters to the query
cmd.Parameters.Add(myParameter1);
cmd.Parameters.Add(myParameter2);

// execute the query
cmd.ExecuteNonQuery();
cmd2.ExecuteNonQuery();
cmd.Dispose();
cmd =
null;
cmd2.Dispose();
cmd2 =
null;

c est peut etre au niveau de row.cells[0].Value???

je sais pas vraiment là non plus!

Mille merci
Sabine
Messages postés
84
Date d'inscription
dimanche 1 juillet 2007
Statut
Membre
Dernière intervention
8 janvier 2013
2
Salut tous le monde
j'ai créer ajouter a ma datagridview une colonne CheckBox et je veut quand je selectionne une ligne j'affiche le nom et le prenom de l'enregistrement selectionné dans un label ,comment faire SVP
Comment extraire des données d'une ligne selectonné
Merci d'avance
Messages postés
3
Date d'inscription
jeudi 2 décembre 2010
Statut
Membre
Dernière intervention
9 février 2011

Salut!
J'aimerais que quelqu'un m'aide svp!
j'arrive à créer un DataGridView avec un checkboxcolomn mais j'aimerais après avoir cliqué ou checké la colonne pour un boutton que j'ai mis dans la form soit activer et quand j'ai deselectionné pour le boutton soit desactivé. Merci

Tijesus