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 :

Label ne change pas dans un formulaire


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre régulier
    Inscrit en
    Mai 2004
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 7
    Par défaut Label ne change pas dans un formulaire
    Dans la fenêtre configuration d'une application c#, j'utilise un bouton (button2) pour lancer la mise à jour des credits d'un compte SMS.
    Je voudrais que le clic sur ce bouton me :
    * change le texte d'un champ Label puis
    * aille chercher le crédit puis
    * inscrive ce crédit dans ce même champ label.

    Voici le bouton :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
                // button2
                // 
                this.button2.Location = new System.Drawing.Point(314, 21);
                this.button2.Name = "button2";
                this.button2.Size = new System.Drawing.Size(169, 47);
                this.button2.TabIndex = 21;
                this.button2.Text = "Connexion et mise à jour profil";
                this.button2.UseVisualStyleBackColor = true;
                this.button2.Click += new System.EventHandler(this.button2_Click);
    Voici la fonction lancée par le bouton
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
            private void button2_Click(object sender, EventArgs e)
            {
                this.SMSCreditOVH.Text = "Connexion en cous .... patience ...";
                this.SMSCreditOVH.Text = MyEdSMS.VachercherCreditSMSOVH();
            }
    La commande VachercherCreditSMSOVH() prend 4/5secondes, c'est un peu long (il y a une connexion sécurisée de session, ça prend un peu de temps et ne peut etre réduit).
    Ainsi, je souhaiterais que le label "SMSCreditOVH.Text" affiche "Connexion en cous .... patience ..."
    Hors, ça ne s'affiche jamais et la recherche du crédit étant bloquant, faut patienter. L'utilisateur peut se demander si ça a planté.

    Pouvez vous m'aider ? Merci

  2. #2
    Expert confirmé Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Par défaut
    Avant le "va checher",Essaie :Sinon, mais c'est moins propre:

  3. #3
    Membre expérimenté
    Avatar de StormimOn
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2005
    Messages
    2 593
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2005
    Messages : 2 593
    Par défaut
    Pour situer le problème, en Windows Forms (WPF aussi je pense) le thread principal de l'application s'occupe de la partie graphique. Si jamais on bloque ce thread avec un traitement long alors on a des problèmes de rafraîchissement, la partie graphique ne pouvant plus être mise à jour.

    Pour éviter ça le mieux reste d'utiliser un autre thread, un BackgroundWorker (ce qui revient à utiliser un autre thread, mais c'est transparent), faire un appel de méthode asynchrone... afin d'exécuter le traitement long dans un autre thread que celui dédié à l'affichage.

    A mon sens c'est plus propre que d'utiliser Application.DoEvents(), qui peut néanmoins parfois s'avérer utile sinon la méthode n'existerait pas. Mais j'ai toujours pu faire sans pour le moment.

  4. #4
    Membre régulier
    Inscrit en
    Mai 2004
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 7
    Par défaut
    fonctionne très bien, parfait, merci.

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

Discussions similaires

  1. Url ne change pas dans la barre d'adresse
    Par tkhchkhiche dans le forum Langage
    Réponses: 8
    Dernier message: 29/09/2009, 08h58
  2. Les labels n'apparaissent pas dans l'éditeur
    Par SaiRictus dans le forum NetBeans
    Réponses: 6
    Dernier message: 27/07/2009, 14h54
  3. La page ne change pas dans l'iframe
    Par cl@ndestIno dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 28/04/2007, 08h14
  4. données qui ne s'affichent pas dans le formulaire
    Par zeloutre dans le forum Access
    Réponses: 16
    Dernier message: 04/10/2006, 15h29
  5. Réponses: 4
    Dernier message: 11/09/2006, 17h46

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