키워드가있는 ReactiveList가 있습니다. 사용자는 해당 목록에서 키워드를 추가하거나 제거 할 수 있습니다. 앱이 사용자가 키워드 중 하나를 입력했는지 확인해야합니다. 이미 유사한 포스트가 있었다 그러나이 계정에 유연한 목록을하지 않습니다 Using Reactive Extension for certain KeyPress sequences?사용자가 Reactive Extension을 사용하여 ReactiveList에서 단어를 입력했는지 확인
var keyElements = new ReactiveList<KeyElement>();
IObservable<IObservable<int>> rangeToMax = Observable.Merge(keyElements.ItemsAdded, keyElements.ItemsRemoved).Select(obs => Observable.Range(2, keyElements.Select(ke => ke.KeyTrigger.Length).Max()));
IObservable<IObservable<string>> detectedKeyTrigger = rangeToMax
.Select(n => _keyPressed.Buffer(n, 1))
.Merge().Where(m => keyElements.Where(ke => ke.KeyTrigger == m).Any());
//Here I want to end up with IObservable<string> instead of IObservable<IObservable<string>>
내가 반응 목록 변경에 요소 detectedKeyTrigger 때마다 재 할당하여 외부 IObservable 제거 할 수
, 그러나 그 때 나는 나의 기부금을 모두 잃는다. 그럼 Observable of String으로 끝날 수 있을까요?
코드를 수정 해 주실 수 있습니까? '.Buffer (n, 1)'또는'.Any()) 다음에 대괄호가 추가로 붙었습니다. 그럼 너는 [mcve]를 만들어 줄 수 있니? 나는 당신의 코드를 컴파일하고 실행할 수 있기를 원한다. – Enigmativity
@Enigmativity는 내 질문에 시간을 할애 해 주셔서 감사합니다. 예제 코드에서 작은 업데이트를했습니다. 그 사이에 Jon Stødle이 내가 찾던 해답을 제시했습니다. – jtourlamain
걱정할 필요가 없습니다. 앞으로는 [mcve]를 게시하는 것이 좋습니다. 그것은 많은 도움이 될 것입니다. – Enigmativity