【发布时间】:2016-09-11 07:56:36
【问题描述】:
我有 listView 显示书名和第一作者:
<ListView.View>
<GridView>
<GridViewColumn Header="Name" Width="Auto" DisplayMemberBinding="{Binding Name}" />
<GridViewColumn Header="Author" Width="Auto" DisplayMemberBinding="{Binding Authors[0].Name}" />
</GridView>
</ListView.View>
但我不仅需要显示第一作者的姓名,还需要显示集合中的所有作者,并用逗号分隔。这是我的模特:
public class Book : IModel
{
public Book()
{
Authors = new List<Author>();
Tags = new List<string>();
}
public string Name { get; set; }
public List<Author> Authors { get; set; }
public string ISBN { get; set; }
public int Pages { get; set; }
public List<string> Tags { get; set; }
public int PublicationYear { get; set; }
public PublicationHouse PublicationHouse { get; set; }
}
XAML 背后的代码:
public partial class BooksView : ListView
{
public BooksView()
{
InitializeComponent();
ItemsSource = FilesManager.books.Values;
}
}
【问题讨论】:
-
使用绑定转换器将
IEnumerable<Author>转换为字符串,或者添加另一个已经包含结果字符串的属性(可能是视图模型类)。