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 :

Databinding listview<=> collection [Débutant]


Sujet :

Windows Presentation Foundation

  1. #1
    Membre habitué Avatar de skysee
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    191
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Décembre 2002
    Messages : 191
    Points : 137
    Points
    137
    Par défaut Databinding listview<=> collection
    Bonjour,

    J'essai de comprendre le fonctionnement du binding, mais la je bloque.

    Donc la listview n'est pas remplie avec les élément de l'ObservableCollection.

    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
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
     
    Imports System.Collections.ObjectModel
     
    Class MainWindow
     
        Dim _Voiture_Coll As New ObservableCollection(Of voiture)
     
     
     
        Public Sub New()
     
            _Voiture_Coll.Add(New voiture("clio", "verte", 2000))
            _Voiture_Coll.Add(New voiture("twingo", "bleu", 1996))
            _Voiture_Coll.Add(New voiture(modele:="zoe", couleur:="rouge", annee:=2013))
     
            InitializeComponent()
        End Sub
     
        Public Property Voiture_Collection As ObservableCollection(Of voiture)
            Get
                Return _Voiture_Coll
            End Get
            Set(value As ObservableCollection(Of voiture))
     
            End Set
        End Property
    End Class
     
     
    Public Class voiture
        Private _modele As String
        Private _couleur As String
        Private _annee As Integer
     
        Sub New(ByVal modele As String, ByVal couleur As String, ByVal annee As Integer)
            Me._modele = modele
            Me._couleur = couleur
            Me._annee = annee
        End Sub
     
        Public Property Modele() As String
            Get
                Return Me._modele
            End Get
            Set(value As String)
                Me._modele = value
            End Set
        End Property
     
        Public Property Couleur() As String
            Get
                Return Me._couleur
            End Get
            Set(value As String)
                Me._couleur = value
            End Set
        End Property
     
        Public Property Annee() As Integer
            Get
                Return Me._annee
            End Get
            Set(value As Integer)
                Me._annee = value
            End Set
        End Property
     
    End Class
    et le xaml :
    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
     
    <Window x:Class="MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="MainWindow" Height="350" Width="525">
        <StackPanel>
            <ListView ItemsSource="{Binding Voiture_Collection}">
                <ListView.View>
                    <GridView>
                        <GridViewColumn Width="150" Header="Modèle" DisplayMemberBinding="{Binding Modele}"/>
                        <GridViewColumn Width="150" Header="Couleur" DisplayMemberBinding="{Binding couleur}"/>
                        <GridViewColumn Width="150" Header="Année" DisplayMemberBinding="{Binding Annee}"/>
                    </GridView>
                </ListView.View>
            </ListView>
        </StackPanel>
    </Window>
    Je précise que la collection est bien remplie (observé au debugger).

  2. #2
    Membre habitué Avatar de skysee
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    191
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Décembre 2002
    Messages : 191
    Points : 137
    Points
    137
    Par défaut
    Arf, désolé je viens de voir qu'il manquait :

    DataContext="{Binding RelativeSource={RelativeSource Self}}"

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

Discussions similaires

  1. ListView/TV sur collection de string, impossible de modifier
    Par Spazou dans le forum Windows Presentation Foundation
    Réponses: 6
    Dernier message: 22/01/2010, 14h52
  2. DataBinding: Element d'une collection dans une ComboBox.
    Par Ivynox dans le forum Windows Forms
    Réponses: 3
    Dernier message: 30/11/2009, 10h38
  3. [Databinding] bind sur une propriété d'une collection
    Par herveb dans le forum Général Dotnet
    Réponses: 2
    Dernier message: 11/12/2007, 10h35
  4. [WPF] Listview tri et databinding
    Par Jérem22 dans le forum Windows Presentation Foundation
    Réponses: 9
    Dernier message: 26/09/2007, 14h08
  5. [C# VS2005 CF]databinding liste d'objets sur un listview
    Par pdesoil dans le forum Windows Forms
    Réponses: 1
    Dernier message: 28/03/2007, 15h38

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