Bonjour, je développe un programme pour un serveur et je bloque à un endroit, voilà le soucis :
Donc dans mon logiciel, cette fonction permet de récupérer des informations telles que le temps de connexion total et d'autres informations sur un membre du Staff sur une période choisie.
Alors pour le moment j'arrive à sélectionner la période voulue, et à avoir l'identifiant du staff, le soucis est le suivant :
J'aimerai pouvoir dans mon datagridview, sélectionner toutes les lignes correspondant à l'indentifiant du staff et dont la date correspond à la période choisie :
Voici quelques screens de mon logiciel :
http://prntscr.com/jflgnl
Sur cette partie, on sélectionne la période(7j max) puis dans le datagridview on va faire click droit sur le steam id du staff choisi et cliquer sur affichier le résumé sur la période.
http://prntscr.com/jflh9d
Ici on a le datagrid principal, donc une fois que la période est choisie et que la personne va cliquer pour résumer, je voudrai sélectionner et garder seulement les lignes correspondantes au steam ID et qui contiennent la date donc par exemple :
Je sélectionne ma période de 4 jours du 6 au 9 mai 2018
Je sélectionne le Steam ID voulu et je clique sur résumé
Une fois cliqué, dans mon dataGridView1 qui comprends steamid, nom, date de connexion, déconnexion, temps de jeu et total de claims, le logiciel garde uniquement les lignes qui contiennent : Le Steam ID, et dont la date de connexion contient 06/05/2018, 07/05/2018, 08/05/2018 et 09/05/2018
Je tiens à préciser que de base, je récupère ses données sur une page html et je les transcrits dans un datatable appellé dtData puis je le mets en DataSource pour mon dataGridView1.
Donc du coup j'aimerai qu'au lieu de vider le gridview1, il sélectionne juste les valeurs voulues et les transmettent dans un dataGridView3.
J'espère avoir été assez précis car j'ai un peu de mal à m'expliquer par rapport à ça, si vous avez besoin de plus de détails ou de précision je donnerai tout ce qu'il faut
J'ai essayé ce code mais il me renvoie le numéro de la ligne contenant une nouvelle fois le Steam ID, c'est déjà cool mais j'ai toujours pas trouvé comment faire pour avoir la date + le steam id :/
De plus, dés qu'il ne trouve plus de cellules correspondants, le logiciel crash car "System.NullReferenceException*: 'La référence d'objet n'est pas définie à une instance d'un objet.' System.Windows.Forms.DataGridViewCell.Value.get retournée null."
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 int index = dataGridView1.CurrentRow.Index; string someString = dataGridView1[0, index].Value.ToString(); //steamid int index2 = dataGridView1.CurrentRow.Index; string someString2 = dataGridView1[3, index].Value.ToString(); string output = someString2.Split('-').Last(); string result = output.Replace(" ", ""); // date foreach (DataGridViewRow row in dataGridView1.Rows) { if (row.Cells[0].Value.ToString().Contains(someString)) { MessageBox.Show(System.Convert.ToString(row)); } }
Partager