2012-03-14 50 views
0

我使用BrightIdeasSoftware的objectListView組件,並且我想呈現一個我創建的列表。所以我有兩列:標題,藝術家。 接下來,我寫了一首歌類:如何在objectListView上顯示值?

class Song 
{ 
    public Song() 
    { 

    } 

    public Song(string title, string artist) 
    { 
     this.Title = title; 
     this.Artist = artist; 
    } 

    public string Title 
    { 
     get { return title; } 
     set { title = value; } 
    } 
    private string title; 

    public string Artist 
    { 
     get { return artist; } 
     set { artist = value; } 
    } 
    private string artist; 
} 

,並創建了一個清單:

 List<Song> songs = new List<Song>(); 
     Song example = new Song("My Immortal", "Evanescence"); 
     songs.Add(example); 

最後,我打電話SetObjects:

 objectListView1.SetObjects(songs); 

但是......問題這份清單是作爲一個空的清單呈現給我的! (我的意思是,沒有字符串在運行時寫入...)

有人可以幫我弄清楚爲什麼...?

回答

0

有幫助的是輸入我想要在AspectName屬性中顯示的字段的名稱。 我的意思是「標題」/「藝術家」。因爲它們包含字符串值,所以我不必輸入「AspectToStringFormat」值。

0

使用BrightIdeasSoftware的ObjectListView,您可以爲每個列提供一個委託來處理顯示的內容。

FX:

var clmTitle = new OLVColumn(); 

clmTitle.AspectGetter = obj => (obj as Song).Title; 


var clmArtist = new OLVColumn(); 

clmArtist.AspectGetter = obj => (obj as Song).Artist; 

objectListView1.Columns.AddRange(new OlVColumn[]{clmTitle,clmArtist}); 

objectListView1.SetObjects(songs);