Même si je sais que ce n'est pas idéal - je dois remplir par programme un listView (pour une raison quelconque).
Je déclare mes colonnes dans le balisage:
<ListView.View>
<GridView>
<GridViewColumn Header="Name" DisplayMemberBinding="{Binding Path=Name}"/>
<GridViewColumn Header="Value" DisplayMemberBinding="{Binding Path=Value}"/>
</GridView>
</ListView.View>
J'ajoute des éléments comme celui-ci dans le code (c'est évidemment dans une boucle):
MyData data = getDataItem(index); //< -- whatever
ListViewItem item = new ListViewItem();
item.DataContext = data;
this.myListView.Items.Add(item);
Où MyData est défini comme:
public class MyData
{
public string Name { get; set; }
public string Value { get; set; }
}
Les éléments sont ajoutés (je peux voir les lignes) mais je ne vois aucun contenu.
Quelqu'un a la moindre idée?
Toute aide appréciée!
Cela fonctionne en changeant le code en:
MyData data = getDataItem(index); //< -- whatever
this.myListView.Items.Add(data);
Maintenant, cela semble évident, mais ... allez comprendre!