在C#中设置SelectList中的所有值

时间:2012-06-26 07:33:57

标签: c# selectlist

SelectList对象中,我希望SelectList的每个元素的Text属性也应该是值。例如:

SelectList s=new SelectList(some list);
s.ElementAt(i).Value=s.ElementAt(i).Text;

使用循环有没有办法做这个APART?是否有任何内置方法或类似的方法来实现这一目标?

2 个答案:

答案 0 :(得分:1)

您可以对SelectList使用以下构造函数重载:

public SelectList(
    IEnumerable items,
    string dataValueField,
    string dataTextField
)

然后,您可以为dataValueField和dataTextField提供相同的列表成员。

答案 1 :(得分:1)

如果你真的想在没有循环的情况下这样做,只需使用linq foreach(后台循环):

s.ToList().ForEach(c=>c.Text = c.Value)