IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

Afficher une information [Débutant]


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Mars 2008
    Messages
    152
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 152
    Par défaut Afficher une information
    Bonjour,

    Euh ! Je n'arrive pas à saisir pourquoi je ne peux afficher une valeur.

    J'ai un labelx à lequel je veux afficher : Labelx.Value = "blabla"

    Je veux cette info juste avant de démarrer une routine. Je pensais que je devais mettre un délai avec Thread.Sleep(2000). Même avec ça, impossible d'obtenir la valeur.

    Du coup, si je fais un MessageBox.Show, dans ce cas Labelx.Value s'affiche avec "blabla"...

    Un peu bête comme question... désolé !

  2. #2
    Membre éclairé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juin 2005
    Messages
    700
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Juin 2005
    Messages : 700
    Par défaut
    Ta question n'est pas claire
    car tu écris
    je veux afficher : Labelx.Value = "blabla"
    puis

    Labelx.Value s'affiche avec "blabla"
    donc tout va bien non?

    En tout cas n'utilise pas Thread.Sleep pour régler des problèmes d'affichage, ca n'est pas la solution.

  3. #3
    Membre confirmé
    Inscrit en
    Mars 2008
    Messages
    152
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 152
    Par défaut
    Je précise ma question

    Le seul moment que j'obtiens l'affichage du labelx à blabla, c'est lorsque je fais un MessageBox.

    C'est comme si cette pause du Messagebox, donne le temps d'affiche le label.

    J'ai l'impression que ça va trop vite et que le "refresh" de l'application ne se fait pas.

    Merci

  4. #4
    Membre éclairé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juin 2005
    Messages
    700
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Juin 2005
    Messages : 700
    Par défaut
    ok c'est plus clair ainsi

    Lorsque tu es dans une methode, l'affichage n'est pas mis à jour immédiatement.
    Il l'est lorsque l'application est de nouveau IDLE (en attente d'événements).

    par exemple si tu as une methode :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    public void button_OnClick(sender object,EventArg e)
    {
     //du code
     label.Text = "blablabla";
    //du code
    }
    lorsque tu clique sur le bouton, la methode s'execute, et lorsqu'elle a finit de s'executer, plus rien ne se passe, on est en IDLE, alors l'affichage de label est raffraichi.

    Quand tu affiche une message box, tu fais un ShowDialog. la boite de dialog apparait puis on est en IDLE, en attente d'un clic sur OK.

    l'idéal si tu traite des methodes longues à s'executer, c'est que tu apprenne à utiliser le BackgroundWorker. Tu devra aussi apprendre à utiliser la methode Invoke. tout ca permet de lancer la methode dans un autre thread et donc de raffraichir l'affichage pendant l'execution de la methode.

  5. #5
    Membre confirmé
    Inscrit en
    Mars 2008
    Messages
    152
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 152
    Par défaut
    Je vais faire mes devoirs et apprendre les principes sur tes recommandations.

    Merci c'est apprécié.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 5
    Dernier message: 12/03/2009, 11h54
  2. Afficher une information de la bd après la saisie d'une valeur
    Par BILANGA dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 09/03/2009, 15h09
  3. Réponses: 4
    Dernier message: 06/06/2008, 16h39
  4. Réponses: 2
    Dernier message: 02/05/2007, 17h08
  5. Afficher une information pour la saisie d'un formulaire
    Par Laffont Roselyne dans le forum Access
    Réponses: 1
    Dernier message: 08/11/2005, 14h57

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo