如何在objectListView上显示值
本文关键字:显示 objectListView | 更新日期: 2023-09-27 18:27:59
我正在使用BrightIdeasSoftware的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);
但是。。。问题是,这个列表是作为一个空列表呈现给我的!(我的意思是,运行时没有写入字符串…)
有人能帮我弄清楚为什么…吗。。。?
帮助的是在AspectName属性中输入要显示的字段的名称。我的意思是,"头衔"/"艺术家"。因为它们包含字符串值,所以我不必输入"AspectToStringFormat"值。
使用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);