私はReactiveListキーワードを持っています。ユーザーは、そのリストからキーワードを追加または削除できます。アプリは、ユーザーがキーワードの1つを入力したかどうかを確認する必要があります。 はすでに同様のポストがありましたが、それは、アカウントに柔軟なリストを負いません。 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の文字列だけで終わることはできますか?
あなたはあなたのコードを修正してくださいことはできますか? '.Buffer(n、1)'の後か '.Any()'の後にブラケットを追加するかのいずれかです。あなたは[mcve]を作ってください。私はあなたのコードをコンパイルして実行できることが大好きです。 – Enigmativity
@Enigmativityは私の質問に時間を費やしてくれてありがとう。私は私のサンプルコードを少し更新しました。その間、JonStødleは私が探していた答えを提供しました。 – jtourlamain
心配はいりません。将来、あなたは[mcve]を投稿することが良いでしょう。それはたくさんの助けになります。 – Enigmativity