我想在列表中显示两列
我的代码:
BindingSource DatenNameVorfahr = new BindingSource();
BindingSource DatenNameNachfolg = new BindingSource();
DataClasses1DataContext d = new DataClasses1DataContext();
////
var query = from pers in d.Person select pers;
List<Person> personen = query.ToList();
DatenNameVorfahr.DataSource = query;
DatenNameNachfolg.DataSource = query;
clNachfolg.DataSource = DatenNameVorfahr;
clVorfahr.DataSource = DatenNameNachfolg;
clNachfolg.DisplayMember = "Name" + "Nachname"; <----! (doesnt work)
clNachfolg.ValueMember = "ID";
当我这样做时,我的CheckedListBox只显示&#34; ID&#34; (它是我数据库/列表中的第一列)
答案 0 :(得分:0)
一个解决方案就是使用一些LINQ来获取一个新的List,其中Name和Nachname连接在一起并绑定到它。类似的东西:
var query2 = from q in query
select new
{
FullName = q.Name + " " + q.Nachname,
Id = q.Id
};
DatenNameNachfolg.DataSource = query2;
clNachfolg.DataSource = DatenNameNachfolg;
clNachfolg.DisplayMember = "FullName";
clNachfolg.ValueMember = "Id";
HTH