我不知道现在是不是太晚了,但我不知道该怎么做...
我希望做的事情,以及对象浏览器所说的内容,是这样的:
var oc = new ObservableCollection<T>( new List<T>() );
但ObservableCollection<T>
只有一个无参数构造函数.对象浏览器表示有两个重载,可以在其中传递List和IEnuerable.
我的设置有问题吗?构造器不在电话上吗?(那会很奇怪)
如果这really不存在,那么现在使用WP7的标准方式是什么?
我不知道现在是不是太晚了,但我不知道该怎么做...
我希望做的事情,以及对象浏览器所说的内容,是这样的:
var oc = new ObservableCollection<T>( new List<T>() );
但ObservableCollection<T>
只有一个无参数构造函数.对象浏览器表示有两个重载,可以在其中传递List和IEnuerable.
我的设置有问题吗?构造器不在电话上吗?(那会很奇怪)
如果这really不存在,那么现在使用WP7的标准方式是什么?
显然,你的项目针对的是Windows Phone 7.0.不幸的是,接受IEnumerable<T>
或List<T>
的构造函数在WP 7.0中不可用,只有parameterless constructor.其他构造函数are可在Silverlight 4及以上版本和WP 7.1及以上版本中使用,但不在WP 7.0中使用.
我想你唯一的 Select 就是把你的列表中的项目单独添加到一个ObservableCollection
的新实例中,因为没有现成的方法来批量添加它们.尽管这并不能阻止你自己将其应用到扩展或静态方法中.
var list = new List<SomeType> { /* ... */ };
var oc = new ObservableCollection<SomeType>();
foreach (var item in list)
oc.Add(item);
但如果不必这样做,就不要这样做,如果您的目标是提供重载的框架,那么就使用它们.