none
MouseOver event pour un MenuItem sur WPF RRS feed

  • Question

  • Salut,

    Dans mon projet, j'aimerai suivant que la sourit est au dessus ou non de l’entête d'un MenuItem changer la visibilité d'un control (Boutton, Grid ou UserControl). Je sais qu'on peu utiliser des MenuItem.Template. Mais, je ne l'ai jamais fait.

    Quelqu'un aurait-il une idée?

    Merci:)


    Many

    mardi 15 mars 2016 14:29

Réponses

  • Salut,

    J'ai essaye d'utiliser les control template mais de manière infructueuse. J'avais un problème de porter de variables. Je me suis amuser a mélanger les evenement mouseMOuve and mouseLeave.

            private bool state = true;

            private void MenuItemAbout_MouseMove(object sender, MouseEventArgs e)
            {
                if (state)
                {
                    AboutBox.Visibility = Visibility.Visible;
                    
                }
                AboutBox.Margin = new Thickness(Mouse.GetPosition(this).X + 10, Mouse.GetPosition(this).Y + 10, 0, 0);
                state = false;
            }


            private void MenuItemAbout_MouseLeave(object sender, MouseEventArgs e)
            {

                state = true;
                AboutBox.Visibility = System.Windows.Visibility.Hidden;

            }

    Merci


    Many

    vendredi 18 mars 2016 09:12

Toutes les réponses

  • Salut

    voulez-vous changer la visibilité juste sur un MenuItem en particulier ou sur tous les menuItems ?

    mardi 15 mars 2016 18:09
  • Salut,

    J'aimerai le faire juste sur un.

    Merci


    Many

    mercredi 16 mars 2016 08:28
  • Salut,

    J'ai essaye d'utiliser les control template mais de manière infructueuse. J'avais un problème de porter de variables. Je me suis amuser a mélanger les evenement mouseMOuve and mouseLeave.

            private bool state = true;

            private void MenuItemAbout_MouseMove(object sender, MouseEventArgs e)
            {
                if (state)
                {
                    AboutBox.Visibility = Visibility.Visible;
                    
                }
                AboutBox.Margin = new Thickness(Mouse.GetPosition(this).X + 10, Mouse.GetPosition(this).Y + 10, 0, 0);
                state = false;
            }


            private void MenuItemAbout_MouseLeave(object sender, MouseEventArgs e)
            {

                state = true;
                AboutBox.Visibility = System.Windows.Visibility.Hidden;

            }

    Merci


    Many

    vendredi 18 mars 2016 09:12