我正在尝试转换我的类 AllStock
至 ObservableCollection<AllStock> stockList
但我收到以下错误:
The best overloaded method match for 'System.Collections.ObjectModel.Collection.Add(Haze.AllStock)' has some invalid arguments
这是我的代码:
我创建我的 Observable 集合 -
private ObservableCollection<AllStock> _stockList;
public ObservableCollection<AllStock> stockList
{
get
{
if (_stockList == null)
_stockList = new ObservableCollection<AllStock>();
return _stockList;
}
}
在我的方法中——
var allStock = await service.GetSysproStockAsync();
var stock = allStock.Select(x =>
new AllStock
{
Id = x.Id,
...
MaterialThickness = x.MaterialThickness
});
stockList.Add(stock); //Error here - I want to add my 'var stock' to my ObservableCollection
dgSysproStock.ItemsSource = stockList;
为什么会抛出这个错误?
最佳答案
您的 Linq 的 Select 方法返回一个 IEnumerable 但您的 stockList.Add 没有重载此数据类型(只有 AllStock强>)。
foreach(AllStock aStock in stock)
stockList.Add(aStock)
应该可以。不幸的是,ObservableCollection 没有像 List<>
这样的 AddRange 方法关于c# - 无法将类转换为 ObservableCollection,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36908355/