begin process at 2012 02 08 23:46:08
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C#

 > 

Base de données

 > 

Autre

 > 

comment changer la valeur d'une cellule dans un datagridview selon la valeur d'une autre cellule du même datagridview avec linq ?


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

comment changer la valeur d'une cellule dans un datagridview selon la valeur d'une autre cellule du même datagridview avec linq ?

lundi 12 janvier 2009 à 00:20:57 | comment changer la valeur d'une cellule dans un datagridview selon la valeur d'une autre cellule du même datagridview avec linq ?

MoKaLux

Bonjour,
J'essaie de modifier/changer la valeur d'une cellule dans un datagridview selon la valeur d'une autre cellule du même datagridview.
Dans mon cas je voudrais que les cellules de la 5ème colonne soient divisées par 100 si les cellules de la 2ème colonne finissent par le texte LN.

Cela devrait être très simple mais je tourne en rond depuis trop longtemps maintenant.
Des pistes SVP.

mon code :

var anglaises = from anglaise in toutExcel.ToList()

where anglaise.myticker.EndsWith("LN") == true

selectnew

{

cours = anglaise.mycourspyc

};

Là ça ne marche pas du tout car j'applique un filtre donc toutes les autres données sont eliminées.
J'ai essayé avec un IF mais il me dit que je peux pas changer les données (readonly)...
Avec un foreach pareil, je galère grave.

Merci de m'aider.

lundi 12 janvier 2009 à 23:50:09 | Re : comment changer la valeur d'une cellule dans un datagridview selon la valeur d'une autre cellule du même datagridview avec linq ?

bubbathemaster

for(int i=0; i<dgv.Rows.Count;i++)
{
   if(  ((string)dgv.Rows[i].Cells[1].Value).EndsWith("LN") )
   {
       ((float)dgv.Rows[i].Cells[4].Value) /= 100.0f;
    }
}

Si ta 5eme colonne est de type float.
mardi 13 janvier 2009 à 20:56:33 | Re : comment changer la valeur d'une cellule dans un datagridview selon la valeur d'une autre cellule du même datagridview avec linq ?

MoKaLux

Merci te ta réponse très rapide.
Je me suis empressé d'essayer ton code, magnifique mais j'ai un message d'erreur :-(


((float)dgv.Rows[i].Cells[4].Value) /= 100.0f;

Error 1 The left-hand side of an assignment must be a variable, property or indexer

Je vais essayer de trouver mais au cas où tu saurais le pb merci...

Sincèrement


mardi 13 janvier 2009 à 21:05:09 | Re : comment changer la valeur d'une cellule dans un datagridview selon la valeur d'une autre cellule du même datagridview avec linq ?

MoKaLux

J'étais arrivé avec un autre code :

var
toutExcel = from cellules in fichierExcel.AsEnumerable()
                           
select new
                           
{
                                 
myticker = cellules.Field< string >(fichierExcel.Columns[2]),
                                 mycourspyc = cellules.Field< double >(fichierExcel.Columns[9])
                           };

foreach
( var ang in toutExcel.Where(a => a.myticker.EndsWith( "LN" )))
{
      
ang.mycourspyc = ang.mycourspyc / 100;
}
J'aurais tant aimé que cela marche direct mais malheureusement g l'erreur:
Cannot change ang.mycourspyc because it is read-only.

J'ai essayé de faire datagridview.readonly = false; ...

Mais non.

Je vais reregarder ton code...

mardi 13 janvier 2009 à 21:21:31 | Re : comment changer la valeur d'une cellule dans un datagridview selon la valeur d'une autre cellule du même datagridview avec linq ?

bubbathemaster

Je sais pas j'ai pas compilé le code, juste tappé à l'arrache. S'il veut pas de ça, tu peux faire:

float f = (float)dgv.Rows[i].Cells[4].Value;
dgv.Rows[i].Cells[4].Value = f / 100.0f;

Il serait parfois bon de lacher tous ces trucs de très haut niveau comme linq pour revenir aux bases hein ;o
mardi 13 janvier 2009 à 23:19:47 | Re : comment changer la valeur d'une cellule dans un datagridview selon la valeur d'une autre cellule du même datagridview avec linq ?

MoKaLux

Wouah t trop cool, je vais tester encore avec ta nouvelle piste.
A propos de linq c vraiment pratique comme tout et les pauvres gens qui font csharp se decarcassent vraiment donc c la moindre des choses que de se servir de leur nouveauté...

A plus et bonne soirée

mardi 13 janvier 2009 à 23:36:45 | Re : comment changer la valeur d'une cellule dans un datagridview selon la valeur d'une autre cellule du même datagridview avec linq ?

MoKaLux

mon prog compile avec ta nouvelle soluce mais je n'ai pas le resultat souhaité, mais merci j'avance, j'avance.

Juste un truc en fait j'ai pas des FLOAT g d DOUBLE

dois-je remplacer ???

mardi 13 janvier 2009 à 23:57:23 | Re : comment changer la valeur d'une cellule dans un datagridview selon la valeur d'une autre cellule du même datagridview avec linq ?

bubbathemaster

Bien sur, j'ai mis float en supposant que tes nombres étaient des float. Si tu traite des double, alors fais tout avec des doubles, ie:
double d = (double)dgv.Rows[i].Cells[4].Value;
dgv.Rows[i].Cells[4].Value = d / 100.0;

Ca ne peut que marcher :p
mercredi 14 janvier 2009 à 00:16:27 | Re : comment changer la valeur d'une cellule dans un datagridview selon la valeur d'une autre cellule du même datagridview avec linq ?

MoKaLux

ok ça marche de mieux en mieux mais je ne vois pas les changements dans ma datagridview à l'écran. Peut-être que ça marche mais je le vois pas.

En tout cas c vrai avec ta nouvelle façon ça à l'air de marcher.

J'ai mis ton code avant et ensuite après le code de la datagridview mais pas de changement :-(

Je crois que le pb est que je remplis mon dgc avec un dataset (un tableau excel) et que les données ne peuvent pas être modifiées par programmation dans la dgv ?!? c du read only.

Ah la la... merci en tout cas pour ton aide, je continue de continuer d'essayer de faire que ça marche...

merci

mercredi 14 janvier 2009 à 09:00:33 | Re : comment changer la valeur d'une cellule dans un datagridview selon la valeur d'une autre cellule du même datagridview avec linq ?

bubbathemaster

Ha oui effectivement si ta datagridview est bound a un datatable, ma technique ne fonctionne pas ;o

1 2

Cette discussion est classée dans : changer, valeur, cellule, datagridview, anglaise


Répondre à ce message

Sujets en rapport avec ce message

datagridview changer la cellule selectionné [ par ggrug26 ] bonjour,petit souci, j'utilise un datagridview pour le lien avec ma base,je fais de la selection par ligne et non mar cellule, par contre lors que je Datagridview & currencymanager : comment récupérer la valeur d'une cellule ? [ par lolall03 ] Bonjour, J'ai une DB Mysql(ODBC), et une architecture 3couches(interface, business et accès aux données) Je remplis un datagridview avec ma table de Texte trop long dans une cellule de datagridview [ par blutch0007 ] Bonjour, J'ai des texte très long(en hauteur) dans une DataGridView. On ne voit pas la fin du texte en bas de page. Si la Scrollbar est présente elle Remplir un datagridview avec un fichier XML [ par damsdu64 ] Bonjour a tous, Je suis débutant en C# c'est pourquoi j'ai besoin de votre aide Comme le nom du sujet le dit je voudrais pouvoir à partir de ce fichie changement de type [ par salad1976 ] bonjour tout le mond;est ce que on peux changer le type d'une cellule dans une datagridview? (je veux changer seulement la cellule et pas la colonne)l Cell datagridview [ par Byrong ] Bonjour voila j'ai de nouveau une question concernant les datagridview Comment puis je faire pour qu'une cellule soit modifier par rapport a la cellu récuperer la valeur d'une cellule excel dans un textbox C# [ par Ajordan ] Bonjour, Je suis un peu novice en développement C#, et après avoir chercher un peu partout sur le net, je me lance: Pour une saisie automatique, j'a personnalisation de cellule d'un datagridview [ par ismalife ] Bonjour, je souhaite un affichage personnalisé de mon datagridview en fonction de valeur XML, voici le xml suivant : 24551 21/10 à 18h44 Comment insérer une valeur dans un DataGridView [ par scalpa29 ] Bonjour, j'ai un souci, cela fais un moment que j'essaie d'inserer dans un DataGridView des valeurs mais je n'arrive pas. Aufaite, j'aimerai lister l Cellule de datagridview [ par shedex ] Bonjour, Je voudrais lorsque l'utilisateur entre dans une cellule de datagridview de type [b]string[/b] qu'il n'en sorte pas tant qu'il n'a pas rem


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), 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

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,092 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales