无法从system.collections.generic.ienumerable <int>转换为object [] </int>

时间:2013-02-26 10:39:40

标签: linq

var qResult  = Enumerable.Range(1,10);
comboBox1.Items.AddRange(qResult);

此处出现的问题是“Argument'1':无法从'System.Collections.Generic.IEnumerable'转换为'object []'

我已尝试过各种代码来解决这个问题,但失败了。如果有人能帮助我的话。

4 个答案:

答案 0 :(得分:1)

您必须发送一个对象数组作为参数:

var qResult  = Enumerable.Range(1,10).ToArray();
comboBox1.Items.AddRange(qResult);

答案 1 :(得分:1)

AddRange不会使用可枚举的。如果对象改为给它一个数组:)

        var qResult  = Enumerable.Range(1,10);
        comboBox1.Items.AddRange(qResult.Cast<object>().ToArray());

答案 2 :(得分:1)

AddRange需要绑定的列表或数组。在您的枚举上调用ToArray(),如下所示:

var qResult  = Enumerable.Range(1,10);
comboBox1.Items.AddRange(qResult.ToArray());

答案 3 :(得分:1)

Enumerable.Range会返回Enumerable个整数,但AddRange需要一个数组,因此您应该将qResult转换为数组,只需调用ToArray方法< / p>

qResult.ToArray()