私は得ています
無効なクロススレッドアクセス。
RXスロットルを使用する場合
これが私のコードです:
yObs.SubscribeOnDispatcher()
.DistinctUntilChanged()
.Throttle(TimeSpan.FromMilliseconds(33))
.SkipWhile(y => !_isDragging)
.Subscribe(y =>
{
// Exception when trying to access image
image.RenderTransform = new CompositeTransform() { TranslateY = -y };
_vm.UpdateContentDrag(y / image.ActualHeight * 100);
});
しかし、スロットルを省略すると、すべてが機能します。
私が理解している限り、Throttleはスレッドプールを使用しているため、UIスレッドではOnNextは発生しません。ただし、SubscribeOnDispatcherはそれをUIスレッドにマーシャリングする必要があります。いけませんか?