2010-10-12 55 views
0

我有一个数组类型的人如何将类数组的数据对象添加到下拉列表中?

Person[] Traders = GetTraders(); 

Person类包含的第一个名字,姓氏等

我想所有的名字添加到下拉列表数据对象,例如。我怎样才能做到这一点?我试图做这样的,但它不会得到第一名称:

ddl_traders.DataSource = traders; 

编辑

人有下列字符串字段:名字,姓氏,登录。

我希望下拉列表显示名字,但该值必须是登录名。我相当肯定这是可能的,但我不知道如何做到这一点。有什么建议么?

回答

1

这可能不是最好的办法,但你可以指定字段是diplayed,如:

ddl_traders.DateSource = traders; 
    ddl_traders.DataTextField = "FirstName"; 
    ddl_traders.DateValueField= "login"; 
    ddl_traders.DataBind(); 

这可以让你充分Person对象绑定,但只显示名称,并保持登录为值。

+0

我试图尝试你的解决方案,但我得到愚蠢的'阴影复制'错误。一旦我解决了这个问题,我会尝试你的解决方案。不过谢谢。 – xbonez 2010-10-12 19:49:30

+0

好的。很棒。谢谢! – xbonez 2010-10-12 19:53:17

1

方式一:

ddl_traders.DataSource = GetTraders().OfType<Person>().Select<Person, string>(p => p.FirstName).ToList<string>(); 

这取决于有叫名字的字符串场的人。

+0

人确实有一个名为FirstName的字符串字段。我会试一试。 – xbonez 2010-10-12 19:17:54

+0

PS - 我对这个问题做了一个编辑。你会知道该怎么做吗? – xbonez 2010-10-12 19:19:31

+0

尝试了您的解决方案。获取此错误:错误'System.Array'不包含'Select'的定义,并且没有找到接受'System.Array'类型的第一个参数的扩展方法'Select'(您是否缺少using指令或装配参考?) – xbonez 2010-10-12 19:21:43

相关问题