2012-06-29 59 views
0

我有ObservableCollection有3列:id,name,image。编辑ObservableCollection字段

前两个数据来自db,我想用我的数据填写最后一个数据。在图像列中,我想放一些静态部分+编号

这可能吗?

我认为一些for循环将做的工作,但不知道从哪里开始

编辑 - 我的代码:

对象:

public class HabitatDB 
    { 
     public int id { get; set; } 
     public string name { get; set; } 
     public string imagelink { get; set; } 
    } 

获取数据:

ObservableCollection<HabitatDB> _habitatEntries = null; 

private void GetHabitats() 
     { 
      string strSelect = "SELECT id, name FROM habitat ORDER BY id ASC"; 
      _habitatEntries = (Application.Current as App).db.SelectObservableCollection<HabitatDB>(strSelect); 

      HabitatListBox.ItemsSource = _habitatEntries; 

     } 
+0

展示你是如何填充从数据库数据的代码。那么我们可以帮你填写第三部分 – nkchandra

+0

好吧,我添加了一些代码。如果有问题,我使用SQLite – dargod

回答

0

我几乎失去了整整一天,偶然发现我真的很简单的解决方案...

只是在类的一个小的改变,你不需要混淆ObservableCollection AT ALL。

public class HabitatDB 
{ 
    public int id { get; set; } 
    public string name { get; set; } 
    public string imagelink { get { return string.Format("graphics/habitats/{0}.png", id); } } 
} 

然后,只需<Image Source="{Binding imagelink}"/>