0

有谁知道投射 itemCollection.GetEnumerator() 的正确方法?

由于某些原因,返回 itemCollection.GetEnumerator(); 在 windows phone 8 中工作正常,但在 windows phone 7.5 中不起作用它要求我明确地投射它,但我不确定什么是正确的方法。有人知道吗?

public class ItemCollection : IEnumerable<Object>
{
    private System.Collections.ObjectModel.ObservableCollection<Item> itemCollection = new System.Collections.ObjectModel.ObservableCollection<Item>();

    public IEnumerator<Object> GetEnumerator()
    {
        //return itemCollection.GetEnumerator();
        IEnumerator<Object> test = (IEnumerator<Object>)itemCollection.GetEnumerator();

        return test;
    }

    System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator()
    {
        return GetEnumerator();
    }

    public void Add(Item item)
    {
        itemCollection.Add(item);
    }
}
4

3 回答 3

0

也,试试这个

return itemCollection.Cast<object>()
于 2013-02-20T13:42:47.453 回答
0

我不确定,但试试这个

IEnumerator<Object> test = new IEnumerator<Object>(itemCollection.GetEnumerator());
于 2013-02-20T13:38:18.180 回答
0

嗯,我不清楚你为什么要这样做:这样做不是更好吗:

public class ItemCollection : System.Collections.ObjectModel.ObservableCollection<Item>
{
}
于 2013-02-20T13:51:18.983 回答