2009-08-20 23 views
23

İdeal olmadığını bilmeme rağmen - bir listeyi programlı olarak doldurmam gerekiyor (her ne sebeple olursa olsun).WPF ListView - öğeleri programlı olarak nasıl ekleyebilirim?

Ben işaretlemesinde Sütunlarımı ilan ediyorum:

  <ListView.View> 
       <GridView> 
        <GridViewColumn Header="Name" DisplayMemberBinding="{Binding Path=Name}"/> 
        <GridViewColumn Header="Value" DisplayMemberBinding="{Binding Path=Value}"/> 
       </GridView> 
      </ListView.View> 

Ben (bir döngü içinde olduğu ortada) kodunda Bu gibi öğeleri ekliyorum:

  MyData data = getDataItem(index); //< -- whatever 
      ListViewItem item = new ListViewItem(); 
      item.DataContext = data; 
      this.myListView.Items.Add(item); 
MyData olarak tanımlanır

:

public class MyData 
{ 
    public string Name { get; set; } 
    public string Value { get; set; } 
} 

Öğeler ekleniyor (satırlarımı görebiliyorum) ancak içerik göremiyorum.

Herhangi bir ipucu var mı?

Herhangi bir yardım için teşekkür ederiz!

cevap

30

Bu kod değiştirerek çalışır:

 MyData data = getDataItem(index); //< -- whatever 
     this.myListView.Items.Add(data); 

Şimdi bariz görünüyor ama ... git şekil!

+0

Çözüm için teşekkürler! cazibesi gibi çalıştım :) – SolidSnake

+0

hey adam, hoş geldiniz - aynı zamanda başka birine yardım ettiğinden memnun oldum :) – JohnIdol

+0

Aynı konuyu çözmeyi biliyor musunuz, farklı özelliklere sahip farklı nesneler alabilen genel bir listeye sahip olursunuz ? – Markus