none
Selection ListView RRS feed

  • Question

  • Bonjour tout le monde,

    J'ai une application WPF dans laquelle j'y ai placé une ListView.

    Je Bind sur ma base de données, et cela m'affiche les éléments demandée, jusque là pas de problème.

    Au chargement de ma fenêtre, donc, ma ListView affiche bien les éléments demandés.

    Ce que je souhaiterais, c'est qu'au démarrage de l'application, le premier terme de ma ListView soit sélectionné. J'ai également essayé de placer des boutons de navigation pour parcourir cette LisView, mais cela ne fonctionne pas.

    Pourriez-vous m'éclairer, s'il vous plaît.

    A Bientôt.

    Cordialement.

    jeudi 8 novembre 2012 04:51

Réponses

  • Bonjour,

    Je vous remercie pour votre réponse, la selection du premier élément de la listview fonctionne parfaitement selon mon besoin. Voici le code de la solution :

    - Je charge ma ListView avec le contenu de ma base de données

    - J'initialise ma Listview sur le premier élément de la liste (au démarrage de mon application, le premier élément de ma liste est sélectionné)

    - J'utilise la propriété SelectedIndex de ListView pour creer mes bouons de navigation.

    Voici le code ci dessous.

    Imports System.Data.Entity
    
    Public Class Window1
    
        Dim Db As New OMSContext()
    
        Private Sub Window1_Loaded(sender As Object, e As System.Windows.RoutedEventArgs) Handles Me.Loaded
    
            OMSContext.Current.Customers.Load()
    
            lbContacts.ItemsSource = OMSContext.Current.Customers.Local
    
        End Sub
        Private Sub btnFirst_Click(ByVal sender As System.Object, ByVal e As System.Windows.RoutedEventArgs) Handles btnFirst.Click
            lbContacts.SelectedIndex = 0
        End Sub
    
        Private Sub btnPrevious_Click(ByVal sender As System.Object, ByVal e As System.Windows.RoutedEventArgs) Handles btnPrevious.Click
    
            Dim selectedIndex As Integer = lbContacts.SelectedIndex
    
            If (selectedIndex > 0) Then
    
                lbContacts.SelectedIndex = selectedIndex - 1
    
            End If
    
        End Sub
    
        Private Sub btnNext_Click(ByVal sender As System.Object, ByVal e As System.Windows.RoutedEventArgs) Handles btnNext.Click
    
            Dim selectedIndex As Integer = lbContacts.SelectedIndex
    
            If (selectedIndex <= lbContacts.Items.Count - 1) Then
    
                lbContacts.SelectedIndex = selectedIndex + 1
    
            End If
    
        End Sub
    
        Private Sub btnLast_Click(ByVal sender As System.Object, ByVal e As System.Windows.RoutedEventArgs) Handles btnLast.Click
            lbContacts.SelectedIndex = lbContacts.Items.Count - 1
        End Sub
    
        Private Sub lbContacts_Initialized(sender As Object, e As System.EventArgs) Handles lbContacts.Initialized
            lbContacts.SelectedIndex = 0
        End Sub
    End Class
    

    Encore une fois merci de m'avoir aiguillé.

    A bientôt.

    Cordialement.

    • Marqué comme réponse Kensi22 samedi 10 novembre 2012 01:26
    vendredi 9 novembre 2012 19:19

Toutes les réponses

  • Bonjour,

    Ne peut-on pas sélectionner le premier élément d'un listview au démarrage (ou par programme).

    Merci de votre aide.

    Cordialement

    jeudi 8 novembre 2012 18:56
  • Bonjour
    Avez-vous essaye de utiliser la propriété SelectedIndex de ListView?
    Par default c'est -1 (aucune sélection), et le faire 0 (premier élément dans la liste)?
     
    Cordialement,


    Aurel BERA, Microsoft
    Microsoft propose ce service gratuitement, dans le but d'aider les utilisateurs et d'élargir les connaissances générales liées aux produits et technologies Microsoft. Ce contenu est fourni "tel quel" et il n'implique aucune responsabilité de la part de Microsoft.

    vendredi 9 novembre 2012 10:20
  • Bonjour,

    Je vous remercie pour votre réponse, la selection du premier élément de la listview fonctionne parfaitement selon mon besoin. Voici le code de la solution :

    - Je charge ma ListView avec le contenu de ma base de données

    - J'initialise ma Listview sur le premier élément de la liste (au démarrage de mon application, le premier élément de ma liste est sélectionné)

    - J'utilise la propriété SelectedIndex de ListView pour creer mes bouons de navigation.

    Voici le code ci dessous.

    Imports System.Data.Entity
    
    Public Class Window1
    
        Dim Db As New OMSContext()
    
        Private Sub Window1_Loaded(sender As Object, e As System.Windows.RoutedEventArgs) Handles Me.Loaded
    
            OMSContext.Current.Customers.Load()
    
            lbContacts.ItemsSource = OMSContext.Current.Customers.Local
    
        End Sub
        Private Sub btnFirst_Click(ByVal sender As System.Object, ByVal e As System.Windows.RoutedEventArgs) Handles btnFirst.Click
            lbContacts.SelectedIndex = 0
        End Sub
    
        Private Sub btnPrevious_Click(ByVal sender As System.Object, ByVal e As System.Windows.RoutedEventArgs) Handles btnPrevious.Click
    
            Dim selectedIndex As Integer = lbContacts.SelectedIndex
    
            If (selectedIndex > 0) Then
    
                lbContacts.SelectedIndex = selectedIndex - 1
    
            End If
    
        End Sub
    
        Private Sub btnNext_Click(ByVal sender As System.Object, ByVal e As System.Windows.RoutedEventArgs) Handles btnNext.Click
    
            Dim selectedIndex As Integer = lbContacts.SelectedIndex
    
            If (selectedIndex <= lbContacts.Items.Count - 1) Then
    
                lbContacts.SelectedIndex = selectedIndex + 1
    
            End If
    
        End Sub
    
        Private Sub btnLast_Click(ByVal sender As System.Object, ByVal e As System.Windows.RoutedEventArgs) Handles btnLast.Click
            lbContacts.SelectedIndex = lbContacts.Items.Count - 1
        End Sub
    
        Private Sub lbContacts_Initialized(sender As Object, e As System.EventArgs) Handles lbContacts.Initialized
            lbContacts.SelectedIndex = 0
        End Sub
    End Class
    

    Encore une fois merci de m'avoir aiguillé.

    A bientôt.

    Cordialement.

    • Marqué comme réponse Kensi22 samedi 10 novembre 2012 01:26
    vendredi 9 novembre 2012 19:19