Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Probleme de datagrid [ Windows / Formulaire / Winforms / Controls ] (sandra26)

lundi 9 octobre 2006 à 14:18:40 | Probleme de datagrid

sandra26

Salut,
voila jai un pb avec mon datagrid, je travaille sur Visual 2003.
En fait je me suis appercue que si je viens a changer des donnees dans mon datagrid et que je souhaite enregistrer mes changements a l'aide de l'evenement Leave, mon tout dernier changement n'est pas pris en compte.
J'ai d'abord pense que je faisait une mauvaise manip mais j'ai reproduit la situation de facon tres simple et en effet le dernier changement n'est pas pris en compte.
Je vous envois  la partie de code que j'ai recree afin que vous puissiez tester par vous meme.

private

void Form1_Load(object sender, System.EventArgs e)

{

OleDbConnection oConnexion=
new OleDbConnection();

DataSet oDataSet=

new DataSet();

string chemin =Application.ExecutablePath;

String p;

p = Application.ExecutablePath;

p=p.Substring(0, p.LastIndexOf("\\"));

string strConnString = maConnection;

oConnexion.ConnectionString=strConnString;

oleDbConnection1 = oConnexion;

 

string str = maRequete;

oleDbConnection1.Open();

OleDbCommand cmd=

new OleDbCommand(str, oleDbConnection1);

OleDbDataAdapter adapter =

new OleDbDataAdapter(cmd);

DataSet ds =

new DataSet();

adapter.Fill(ds);

oleDbConnection1.Close();

dataGrid1.DataSource=ds.Tables[0];


}

private

void dataGrid1_Leave(object sender, System.EventArgs e)

{

for

(int i=0; i<dataGrid1.VisibleRowCount-1; i++)

{

int nb=Convert.ToInt32(dataGrid1[i,0]);

string code=dataGrid1[i,1].ToString();

string heure=dataGrid1[i,2].ToString();

int montant=Convert.ToInt32(dataGrid1[i,3]);

bool livre=Convert.ToBoolean(dataGrid1[i,4]);}

}

Voila , par exemple si la derniere manip est de changer le 'nb' alors en mettant un break point sur le Leave et en passant dessus vous verrez que le 'nb' sera le meme qu'il y avait avant changement

Je ne sais pas quoi faire, est-ce que ca vous fait la meme chose et quesque je peux faire?


sandra

lundi 9 octobre 2006 à 15:26:57 | Re : Probleme de datagrid

leprov

est ce que tu valide ton dernier changement? ce que je veux dire, cest est ce que apres ton changement, tu ferme directement ta form, ou est ce que tu change de case dans ton datagrid? si tu ne change pas de case dans ton datagrid ca me semble normal que tu n'aies pas le leave. dans ce cas tente de voir en vérifiant si ta derniere case a été changée dans l'évènement close de ta form.

lundi 9 octobre 2006 à 23:05:07 | Re : Probleme de datagrid

sandra26

non en effet je ne valide pas mon dernier changement
mon probleme est que je ne trouve pas le moyen de le valider, est-ce que tu aurai une solution?

sandra

mercredi 11 octobre 2006 à 11:52:29 | forcer la validation

hmarchal

Réponse acceptée !
Salut,

Dans l'évênement Leave, essaie au début d'appeler la méthode update() du datagrid. Il y a aussi la méthode invalidateCell().

Si ça ne marche pas, toujours au même endroit, force le datagrid à changer de cellule courante : propriete currentCell du datagrid.

jeudi 12 octobre 2006 à 08:31:22 | Re : Probleme de datagrid

sandra26

Réponse acceptée !
Salut,
je te remerci bcp, en effet seulement hier j'ai trouve la solution
Pour celui qui en aurai besoin, comme tu me le conseille jai force la validation en ajoutant la ligne suivante:
monDatagrid.CurrentCell = new DatagridCurrentCell(0, 0);
etant donne que ma colonne 0 est invisible pour l'utilisateur ca marche a coup sur.

sandra



Cette discussion est classé dans : string, dataset, datagrid, datagrid1, oledbconnection1


Répondre à ce message

Sujets en rapport avec ce message

Maj bdd par datagrid?! [ par gog ] J'ai remplis un datagrid avec un dataadapter et un dataset,maintenant j'aimerais mettre à jour la bdd, mais je ne sais pas comment récupérer les donné columns datagrid [ par PiAire ] Salut, j'ai un datagrid qui est rempli simplement un dataset et je voudrais simplement afficher quelques colonnes sans pour autemps recreer un autre d Passer d'un DataGrid à un DataSet [ par jdaviaud ] Voila, j'ai récupéré une source contenant un DataGrid de données et je souhaite pouvoir remplir un DataSet avec, effectivement, il serait plus simple de datagrid vers dataset, pb d'exception [ par delegouine ] Je dois passer d'un datagrid vers un dataset. La source de mon datagrid est un datatable, je fais donc DataTable dt = (DataTable)dataGrid1.DataSource pb de save ds db apres modif dataset [ par AppleSeed ] lut all^^.je recup des données d'une database vers un dataset; les modifies (modif de row, ajout de row ou delete de row), je verif si bien modifié ds [aspx][c#] dataSet compter lignes [ par alexisDotNet ] bonjour j'aimerais savoir comment on peut compter les lignes d'un dataSet ou d'un DataGrid, je sais qu'il y a une propriete "rows" mais je n'arrive pa Synchronisation d'un DataSet avec un XmlDataDocument [ par jimbz ] Chers 'pros' du C#.NET, j'ai besoin de vous. Personnellement je suis amateur et je viens de me lancer ds le C# qui offre (offrira quand je maitriserai datagrid dataset champ clef [ par danyo ] salut ,Dans mon code,j'ai un dataset,un datagrid et j'ai fais un setDataBinding.Quand je change dans le datagrid un element qui fait parti du champ cl [c#] DataGrid New Record ? [ par BenoitMayeres ] Bonjour j'aurai voulu savoir comment faire pour detecter si l'utilisateur rentre un nouveau record pour pouvoir remplir certains champs de celui-ci.Co Datgrid et ButtonColumn dynamique [ par yannovitch78 ] bonjour à tous, je viens vers vous car j'ai un petit problème au sujet d'un datagrid dynamique. Je vous explique:je charge un dataset à partir d'une b


Nos sponsors

Sondage...

CalendriCode

Novembre 2008
LMMJVSD
     12
3456789
10111213141516
17181920212223
24252627282930

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,156 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.