Datagrid en temps reel [Résolu]

sandra26 92 Messages postés mercredi 5 juillet 2006Date d'inscription 5 août 2009 Dernière intervention - 1 août 2006 à 12:34 - Dernière réponse : MorpionMx 3489 Messages postés lundi 16 octobre 2000Date d'inscription 30 octobre 2008 Dernière intervention
- 14 août 2006 à 19:59
salut je suis actuellement sur un programme qui sera depose sur un serveur.


Je voudrais que les donnees affichees dans mes datagrids apparaissent en temps reel, est-ce que quelqu'un pourrai me donner une solution ou bien m'aiguiller?
Merci de me venir en aide

sandra
Afficher la suite 

Votre réponse

10 réponses

Meilleure réponse
MorpionMx 3489 Messages postés lundi 16 octobre 2000Date d'inscription 30 octobre 2008 Dernière intervention - 1 août 2006 à 18:40
3
Merci
Disons que ca depend a quel rythme tu declenches ton event.
Et aussi de la lourdeur de tes requetes (en temps d'execution), taille des données a ramener, etc...

Si ca peut te suffir de declencher ton timer toutes les 10 secondes par exemple, je ne pense pas que ce soit trop lourd. Si maintenant tu veux lancer tes requetes toutes les demies secondes, la ca risque d'etre un peu plus rude

Je peux pas te donner + de details sachant que je ne sais pas trop en quoi consiste ton projet. Mais tu peux toujours essayer de faire des tests et voir si ca peut te satisfaire ou non.

Mx
MVP C# 

Merci MorpionMx 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 90 internautes ce mois-ci

Commenter la réponse de MorpionMx
Meilleure réponse
MorpionMx 3489 Messages postés lundi 16 octobre 2000Date d'inscription 30 octobre 2008 Dernière intervention - 1 août 2006 à 19:43
3
Merci
Le plus judicieux serait d'utiliser  la classe System.Timers.Timer

Voici un petit exemple tout simple
<hr />using

System;

using System.Windows.Forms;

using System.Timers;

public
class
Form1 :
Form
{

   private System.Timers.
Timer timer;

   public Form1()
   {

      this.timer =
new System.Timers.
Timer();
// On instancie le timer
      this.timer.Interval = 5000;
// 5 secondes avant que l'evenement Elapsed se declenche
      this.timer.Elapsed +=
new
ElapsedEventHandler(timer_Elapsed);
// Evenement qui se declenchera quand le temps sera écoulé
      this.timer.Start();
// On demarre le timer
   }

   
   private
void timer_Elapsed(
object sender,
ElapsedEventArgs e)
   {

      this.timer.Stop();
// On stoppe le timer
      MessageBox.Show(
"coucou");
// On fait ce qu'on a a faire
      this.timer.Start();
// On redemarre le timer
   }
}
<hr />
Il y a 2 autres classes "Timer":
System.Threading.Timer
System.Windows.Forms.Timer

Voici un petit comparatif ici

Mx
MVP C# 

Merci MorpionMx 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 90 internautes ce mois-ci

Commenter la réponse de MorpionMx
Meilleure réponse
MorpionMx 3489 Messages postés lundi 16 octobre 2000Date d'inscription 30 octobre 2008 Dernière intervention - 1 août 2006 à 19:45
3
Merci
Mince, le lien pour System.Threading.Timers est pas passé
C'est donc ici
Mx
MVP C# 

Merci MorpionMx 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 90 internautes ce mois-ci

Commenter la réponse de MorpionMx
MorpionMx 3489 Messages postés lundi 16 octobre 2000Date d'inscription 30 octobre 2008 Dernière intervention - 1 août 2006 à 12:56
0
Merci
Salut

Je te propose simplement de recharger ta source de données toutes les X secondes, vi le déclenchement d'un timer.
Y'a peut etre une meilleure solution, mais c'est la seule qui me vient a l'esprit a l'heure actuelle.

Mx
MVP C# 
Commenter la réponse de MorpionMx
cs_Bidou 5507 Messages postés dimanche 4 août 2002Date d'inscription 20 juin 2013 Dernière intervention - 1 août 2006 à 13:15
0
Merci
Hi,

L'idéal, serait d'avoir un event qui te notifie quand y'a des changements à effectuer, pour ensuite les répercuter dans ton DataGridView...
Plus dur à mettre en place que le timer

<hr size="2" />VC# forever
Commenter la réponse de cs_Bidou
MorpionMx 3489 Messages postés lundi 16 octobre 2000Date d'inscription 30 octobre 2008 Dernière intervention - 1 août 2006 à 13:21
0
Merci
Le truc, c'est que si sa source de données est un jeu de données qui provient d'une bdd, ce n'est pas celle-ci qui va la prevenir que des données ont été modifiées.
Il faudra donc que ce soit l'appli qui aille verifier elle meme l'état des valeurs. Donc un timer qui lance sa requete et re-affiche les données devrait etre suffisant.

Si les données ne proviennent pas d'une bdd, alors peut-etre qu'il y a moyen au niveau des events. A voir.

Mx
MVP C# 
Commenter la réponse de MorpionMx
sandra26 92 Messages postés mercredi 5 juillet 2006Date d'inscription 5 août 2009 Dernière intervention - 1 août 2006 à 18:35
0
Merci
jai pense faire comme tu ma conseille, cest a dire utiliser un timer mais cest un trop lourd non??
ca risque de faire ramer mon programme non?

sandra
Commenter la réponse de sandra26
sandra26 92 Messages postés mercredi 5 juillet 2006Date d'inscription 5 août 2009 Dernière intervention - 1 août 2006 à 18:56
0
Merci
ok merci


je vais essayer mais je pense que cest la meilleure solution par contre je crois que je mettrais mon timer un peut plus souvent


merci pour ton aide
Par contre je ne sais pas tres bien utiliser un timer peut-tu m'aider?
de toute facon je pense chercher sur le site mais une aide de ta part serai encore mieux
merci encore

sandra
Commenter la réponse de sandra26
sandra26 92 Messages postés mercredi 5 juillet 2006Date d'inscription 5 août 2009 Dernière intervention - 14 août 2006 à 14:40
0
Merci
merci bcp pour ton aide qui ma ete precieuse

sandra
Commenter la réponse de sandra26
MorpionMx 3489 Messages postés lundi 16 octobre 2000Date d'inscription 30 octobre 2008 Dernière intervention - 14 août 2006 à 19:59
0
Merci
Y'a pas de quoi

Mx
MVP C# 
Commenter la réponse de MorpionMx

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.