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 Presentation Foundation Discussion :

Toolbar et Overflow, problème de suppression d'items.


Sujet :

Windows Presentation Foundation

Mode arborescent

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Juin 2005
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 13
    Par défaut Toolbar et Overflow, problème de suppression d'items.
    Bonjour à tous,

    Je viens de découvrir un comportement étrange lié à la Toolbar lors de la suppression d'items. J'ai joint un Zip contenant le XAML, le C# et l'EXE.

    Code XAML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    <Window
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        x:Class="WpfApplication1.Window1"
        ResizeMode="CanResize" SizeToContent="WidthAndHeight">
        <Grid>
            <ToolBar x:Name="toolbar" ItemsSource="{Binding}" />
        </Grid>
    </Window>

    Code C# : 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
    namespace WpfApplication1
    {
        /// <summary>
        /// Interaction logic for Window1.xaml
        /// </summary>
        public partial class Window1 : Window
        {
            private ObservableCollection<Button> _ocButtons = new ObservableCollection<Button>();
     
            public Window1()
            {
                InitializeComponent();
                this.DataContext = _ocButtons;
     
                for (int i = 0; i < 10; i++)
                {
                    Button b = new Button { Height = 23, Width = 72, Content = "Bouton " + i };
                    b.Click += new RoutedEventHandler((sender, e) => _ocButtons.Remove((Button)sender));
                    //b.Click += new RoutedEventHandler((sender, e) => ((Button)sender).Visibility = Visibility.Collapsed);
     
                    _ocButtons.Add(b);
                }
            }
     
     
        }
     
    }

    Le problème survient lorsqu'il y a des éléments cachés dans le ToggleButton. Si vous supprimez un bouton (en lui cliquant dessus) présent dans la Popup des "éléments cachés", vous remarquerez que la Popup devient instantanément vide... même s'il y a des boutons dedans! Ces élements sont toujours présent vu que si on agrandit la Toolbar, les élements cachés s'affichent.

    Le comportement est quasiment le même avec le Visibility à Collapsed. En cliquant sur un bouton, il va disparaître, mais la Popup affiche les éléments restants. Cependant, le bug précédent intervient lorsqu'on a cliqué sur tous les boutons de la Popup...

    Si vous avez des idées pour éviter ce bug, je suis preneur!

    Merci d'avance,
    Chris
    Fichiers attachés Fichiers attachés

Discussions similaires

  1. Problème de suppression de fichier
    Par sorry60 dans le forum Assembleur
    Réponses: 7
    Dernier message: 23/04/2005, 18h33
  2. [JTable] problème après suppression d'une ligne
    Par fredo3500 dans le forum Composants
    Réponses: 7
    Dernier message: 17/03/2005, 10h01
  3. [Excel - VBA] Problème de suppression de lignes...
    Par beholder2 dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 28/01/2005, 17h27
  4. Réponses: 4
    Dernier message: 16/04/2004, 08h20
  5. Suppression d'item dans une arborescence
    Par jonzuzu dans le forum MFC
    Réponses: 2
    Dernier message: 24/02/2004, 17h45

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