我正在尝试使用Reactive Extensions(Rx)订阅WebClient.DownloadProgressChanged
。据我所知,因为DownloadProgressChanged
使用自定义委托类型,我需要使用非常冗长的FromEvent
重载:
var progress = Observable.FromEvent<DownloadProgressChangedEventHandler,
DownloadProgressChangedEventArgs>(
h => new DownloadProgressChangedEventHandler(h),
h => client.DownloadProgressChanged += h,
h => client.DownloadProgressChanged -= h);
但是,progress
的类型为IObservable<IEvent>
,而不是预期的IObservable<IEvent<DownloadProgressChangedEventArgs>>
。
我做错了什么?
答案 0 :(得分:0)
我刚测试了这个,进度是
类型 IObservable<IEvent<DownloadProgressChangedEventArgs>>.
您使用的是什么版本的Rx?我刚刚测试使用最新版本(v1.0.2838.0)