Datagrid checkbox

cs_Sabine25 Messages postés 84 Date d'inscription jeudi 1 mars 2007 Statut Membre Dernière intervention 22 juin 2007 - 26 mars 2007 à 20:55
tijesus151 Messages postés 3 Date d'inscription jeudi 2 décembre 2010 Statut Membre Dernière intervention 9 février 2011 - 31 janv. 2011 à 20:53
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

MorpionMx Messages postés 3466 Date d'inscription lundi 16 octobre 2000 Statut Membre Dernière intervention 30 octobre 2008 57
26 mars 2007 à 21:36
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# 
0
cs_Sabine25 Messages postés 84 Date d'inscription jeudi 1 mars 2007 Statut Membre Dernière intervention 22 juin 2007
26 mars 2007 à 22:09
Merci beaucoup pour ta réponse, je l ai fais avec le designer de VS en 2 secondes, trop chouette ;-)
Sab
0
cs_Sabine25 Messages postés 84 Date d'inscription jeudi 1 mars 2007 Statut Membre Dernière intervention 22 juin 2007
27 mars 2007 à 17:11
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
0
MorpionMx Messages postés 3466 Date d'inscription lundi 16 octobre 2000 Statut Membre Dernière intervention 30 octobre 2008 57
27 mars 2007 à 18:38
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# 
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_Sabine25 Messages postés 84 Date d'inscription jeudi 1 mars 2007 Statut Membre Dernière intervention 22 juin 2007
27 mars 2007 à 19:40
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
0
MorpionMx Messages postés 3466 Date d'inscription lundi 16 octobre 2000 Statut Membre Dernière intervention 30 octobre 2008 57
27 mars 2007 à 19:42
J'ai juste oublié un '=' dans la comparaison...
A remplacer par '=='

Mx
MVP C# 
0
cs_Sabine25 Messages postés 84 Date d'inscription jeudi 1 mars 2007 Statut Membre Dernière intervention 22 juin 2007
27 mars 2007 à 20:59
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
0
kikodos23 Messages postés 84 Date d'inscription dimanche 1 juillet 2007 Statut Membre Dernière intervention 8 janvier 2013 2
22 mars 2008 à 18:36
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
0
tijesus151 Messages postés 3 Date d'inscription jeudi 2 décembre 2010 Statut Membre Dernière intervention 9 février 2011
31 janv. 2011 à 20:53
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
0
Rejoignez-nous