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

Windows Forms Discussion :

[C#][WPF] Problème de clic


Sujet :

Windows Forms

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Janvier 2010
    Messages : 2
    Par défaut [C#][WPF] Problème de clic
    Bonjour à tous,

    Je débute en WPF et notemment en XAML et C#.
    Je suis en train d'écrire une application disposant de plusieurs boutons (jusque là rien d'anormal).
    Lorsque j'exécute le code. Je dois cliquer un fois sur n'importe quel bouton pour que ça s'exécute. (pas de prob.) par contre deux fois sur le second, trois sur le troisième, etc.
    Je vois pas 36 solutions, soit je code avec mes pieds
    soit mon Visual C# 2008 Express Edition est vérolé.
    Pour la partie pédestre :


    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
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
     
    using System.Text;
    using System.Windows;
    using System.Windows.Controls;
    using System.Windows.Data;
    using System.Windows.Documents;
    using System.Windows.Input;
    using System.Windows.Media;
    using System.Windows.Media.Imaging;
    using System.Windows.Navigation;
    using System.Windows.Shapes;
    using System.Windows.Threading;
     
     
    namespace A_voir
    {
        /// <summary> 
        /// Interaction logic for Window1.xaml 
        /// </summary> 
        public partial class Window1 : Window
        {
            DispatcherTimer timer = new DispatcherTimer();
            DispatcherTimer close = new DispatcherTimer();
     
            public Window1()
            {
                InitializeComponent();
            }
     
            private void Button_Close(object sender, RoutedEventArgs e)
            {
                Bouttons.Opacity = 1;
                close.Tick += new EventHandler(close_tick);
                close.Interval = new TimeSpan(0, 0, 0, 0, 5);
                close.Start();
            }
     
            private void Registre_click(object sender, RoutedEventArgs e)
            {
                Bouttons.Opacity = 1;
            timer.Tick += new EventHandler(timer_tick);
            timer.Interval = new TimeSpan(0, 0, 0, 0, 5);
     
                timer.Start(); 
            }
            private void timer_tick(object sender, EventArgs e)
            {
                Bouttons.Opacity -= 0.01;
     
                if (Bouttons.Opacity == 0)
                {
                    timer.Stop();
                }
            }
     
            private void close_tick(object sende, EventArgs e)
            {
                Bouttons.Opacity -= 0.01;
                fermer.Opacity -= 0.01;
     
                if (Bouttons.Opacity == 0)
                {
                    this.Close();
                }
     
     
     
            }
     
            private void New_click(object sender, RoutedEventArgs e)
            {
                Bouttons.Opacity = 1;
                timer.Tick += new EventHandler(timer_tick);
                timer.Interval = new TimeSpan(0, 0, 0, 0, 5);
     
                timer.Start();
            }
     
            private void delete_click(object sender, RoutedEventArgs e)
            {
                Bouttons.Opacity = 1;
                fermer.Opacity = 1;
                timer.Tick += new EventHandler(timer_tick);
                timer.Interval = new TimeSpan(0, 0, 0, 0, 5);
     
                timer.Start();
            }
        }
    }

    Qu'en pensez vous ?
    Bug connu ?
    Merci d'avance à toute l'aide que vous pourrez m'apporter.
    Idem sur toutes mes applications

  2. #2
    Expert éminent Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 204
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 204
    Par défaut
    tu ne codes pas de la bonne manière, en wpf on utilises pas un timer pour changer l'opacité de manière dégressive, on utilise une animation


    wpf est surement buggé, comme tout, mais pas à ce point là je pense


    je suis pas expert en c# mais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    timer.Tick += new EventHandler(timer_tick)
    vu que tu le fais plusieurs fois, ca devrait multiplier le nombre de fois que le code est exécuté à chaque event

    (et merci d'utiliser la balise code pour mettre du code)
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Janvier 2010
    Messages : 2
    Par défaut
    Merci pour ta réponse aussi rapide.

    Donc pour effectuer ce genre de transition, tu me conseillerais de le faire via Expression Blend.

    je me suis également aperçu que le problème se produisait sur une de mes applications où il n'y a pas de dispatcher timer.

Discussions similaires

  1. [WPF] Probléme de binding dans un UserControl :(
    Par UNi[FR] dans le forum Windows Presentation Foundation
    Réponses: 6
    Dernier message: 17/07/2008, 15h51
  2. [WPF] problème avec un GridSplitter
    Par Invité dans le forum Windows Presentation Foundation
    Réponses: 2
    Dernier message: 21/10/2007, 17h44
  3. [WPF] Problème avec Trigger
    Par Heroes dans le forum C#
    Réponses: 7
    Dernier message: 16/07/2007, 16h58
  4. [WPF]Problème d'update de binding
    Par guitoux1 dans le forum Windows Presentation Foundation
    Réponses: 11
    Dernier message: 12/06/2007, 17h42
  5. [WPF] Problème de sécurité pour appel d'une fonction COM
    Par BruceWayne dans le forum Windows Presentation Foundation
    Réponses: 7
    Dernier message: 12/06/2007, 08h02

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