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 :

ScrollViewer, Listbox et Sélection d'item


Sujet :

Windows Presentation Foundation

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Février 2007
    Messages
    96
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 96
    Par défaut ScrollViewer, Listbox et Sélection d'item
    Bonjour à tous,

    J'essai dans le cadre d'un projet de mettre en place une liste horizontal avec des images dans chaque item. Jusque là pas trop de soucis.

    J'ai par exemple une liste de 5 images, et comme ma liste est trop petite la scrollbar(scrollviewer) horizontal apparaît (normal quoi).


    lorsque je vais sur mon dernier item et que je le sélectionne, alors la c'est le drame. (la scrollbar revient à gauche et mon item sélectionné n'est pas le bon).

    Y a t il un moyen d'éviter le probleme.

    (pour info j'utilise blend)

    Merci a tous

    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
     
        <Canvas Background="Black">
            <ScrollViewer Width="594" Height="231" Canvas.Left="15" Canvas.Top="95.667" VerticalScrollBarVisibility="Disabled" HorizontalScrollBarVisibility="Auto" Margin="0" Padding="0" BorderBrush="{x:Null}" BorderThickness="1">
                <ListBox HorizontalAlignment="Left"  Background="{x:Null}" Width="Auto" >
                    <ListBox.ItemsPanel>
                        <ItemsPanelTemplate>
                            <VirtualizingStackPanel IsItemsHost="True" Orientation="Horizontal"/>
                        </ItemsPanelTemplate>
                    </ListBox.ItemsPanel>
                    <ListBoxItem/>
    	   <ListBoxItem/>
    	   <ListBoxItem/>
    	   <ListBoxItem/>
    	   <ListBoxItem/>
                </ListBox>
            </ScrollViewer>
        </Canvas>


    Voici le Code de mon style
    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
     
    <Style TargetType="{x:Type ListBoxItem}">
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="{x:Type ListBoxItem}">
    	        <Grid x:Name="grid1" Width="177" Height="204" Background="Red">
    		    <Grid.RowDefinitions>
                    	<RowDefinition Height="0.184*"/>
    	                <RowDefinition Height="0.483*"/>
    	                <RowDefinition Height="0.333*"/>
    		    </Grid.RowDefinitions>
                    </Grid>
                    <ControlTemplate.Triggers>
                        <Trigger Property="IsMouseOver" Value="true">
                            <Setter TargetName="grid1" Property="Background" Value="Yellow"/>
                        </Trigger>
    	            <Trigger Property="IsSelected" Value="true">
            	        <Setter TargetName="grid1" Property="Background" Value="Blue"/>
    	            </Trigger>
                    </ControlTemplate.Triggers>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>

  2. #2
    Membre confirmé
    Profil pro
    Développeur informatique
    Inscrit en
    Mai 2008
    Messages
    77
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2008
    Messages : 77
    Par défaut
    Pourquoi mettre ta listbox dans un scrollviewer alors que la listbox sait elle meme afficher toute seule les barres de scrolll si jamais son contenu dépasse ?

  3. #3
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Février 2007
    Messages
    96
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 96
    Par défaut
    parce que la scrollbar de la listbox n'a pas un comportement fluide elle va d'item en item

  4. #4
    Membre confirmé
    Inscrit en
    Septembre 2007
    Messages
    114
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 114
    Par défaut
    Ton code semble correcte. L'erreur ne se produit qu'avec le dernier item?
    Que se passe-t-il quand un item est selectionné. C'est probablement à ce niveau qu'il y'a une erreur.

    Ps: Ca n'a surement aucune relation avec ton probleme, mais que se passe t il quand tu supprime le style?

  5. #5
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Février 2007
    Messages
    96
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 96
    Par défaut
    le probleme ne concerne pas que le dernier item, il concerne tous les items cachés de l'écran (besoin de sroller). si j'enleve le style, cela ne change rien.

Discussions similaires

  1. ListBox auto remplissage/postback items vide
    Par Nadjib dans le forum C#
    Réponses: 4
    Dernier message: 15/09/2007, 09h39
  2. Réponses: 2
    Dernier message: 20/08/2007, 17h15
  3. Listbox et Sélections multiples
    Par laurentcr dans le forum Access
    Réponses: 4
    Dernier message: 16/02/2007, 20h13
  4. [ListBox] Récupérer sélection multiple ?
    Par Kylen dans le forum ASP.NET
    Réponses: 4
    Dernier message: 29/06/2006, 14h57
  5. Sélection des items du menu
    Par Depteam1 dans le forum MFC
    Réponses: 3
    Dernier message: 04/03/2005, 11h30

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