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 :

manipulation du scroll pour une datagridView


Sujet :

C#

  1. #1
    Membre confirmé
    Inscrit en
    Avril 2010
    Messages
    101
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 101
    Par défaut manipulation du scroll pour une datagridView
    bonjour,

    j'aimerai savoir comment manipuler la scroll bar de mon control de type datagridview.

    je suis dans le cas ou j'ai un datagridview de 100 élément et
    j'aimerai sélectionner
    1.le dernier élément
    2. faire un avancer ma scrollbar pour que l'item sélectionné soit visible.

    thx 4 ur help

  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
    1.le dernier élément
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    MyDataGridView.CurrentCell=MyDataGridView.Rows.GetLastRow()[0] ;
    2. faire un avancer ma scrollbar pour que l'item sélectionné soit visible.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    MyDataGridView.FirstDisplayedScrollingRowIndex=MyDataGridView.CurrentRow.Index ;
    Pour affiner, on pourra utiliser : MyDataGridView.DisplayedRowCount ;

  3. #3
    Membre confirmé
    Inscrit en
    Avril 2010
    Messages
    101
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 101
    Par défaut
    j'ai eu la solution en créent un behavior et l'attachant au datagridView

    pour le behavior
    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
     
     public class ScrollIntoViewBehavior : Behavior<DataGrid>
        {
            protected override void OnAttached()
            {
                base.OnAttached();
                this.AssociatedObject.SelectionChanged += new SelectionChangedEventHandler(AssociatedObject_SelectionChanged);
            }
     
            void AssociatedObject_SelectionChanged(object sender, SelectionChangedEventArgs e)
            {
                if (sender is DataGrid)
                {
                    DataGrid grid = (sender as DataGrid);
                    if (grid.SelectedItem != null)
                    {
                        grid.Dispatcher.BeginInvoke(delegate
                        {
                            grid.UpdateLayout();
                            grid.ScrollIntoView(grid.SelectedItem, null);
                        });
                    }
                }
            }
     
            protected override void OnDetaching()
            {
                base.OnDetaching();
                this.AssociatedObject.SelectionChanged -=
                    new SelectionChangedEventHandler(AssociatedObject_SelectionChanged);
            }
    pour attacher au datagridview
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    	<i:Interaction.Behaviors>
    					<helpers:ScrollIntoViewBehavior />
    			</i:Interaction.Behaviors>

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

Discussions similaires

  1. Réglage du scroll pour une ancre nommée
    Par renaud26 dans le forum Général JavaScript
    Réponses: 33
    Dernier message: 18/01/2010, 16h49
  2. UN scroll pour toute UNE fenetre ?
    Par poulette3000 dans le forum AWT/Swing
    Réponses: 2
    Dernier message: 24/04/2007, 08h15
  3. Réponses: 6
    Dernier message: 25/07/2006, 15h40
  4. Manipuler le format retourné pour une date.
    Par BlackMinou dans le forum Oracle
    Réponses: 3
    Dernier message: 05/04/2006, 18h01
  5. Réponses: 1
    Dernier message: 16/08/2005, 04h52

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