問題タブ [observable]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
wpf - ObservableCollection がコード ビハインドで ListBox にバインドされない
コード ビハインドでリスト ボックスを観察可能なコレクションにバインドしたいと考えています。これは私がバインディングに使用しているものです:
symTable
から継承するObservableCollection
と、Count プロパティが適切に更新されるため、要素を正しく追加していることはわかっていますが、リスト ボックスはそうではありません。XAMLではリスト全体にバインドされているため、パスを何に設定すればよいかわかりませんでした。
注: ListBox に個々の項目を追加すると、それらが表示されるため、表示上の問題ではありません。私も試しました:
ウィンドウコンストラクターで、次にこれ:
しかし、リソースを解決できないと言われています。
また、XAML でリソースとして追加しようとしましたが、再び機能しませんでした: //ウィンドウのリソースで。
そしてコードビハインドで:
symTable = (SymbolTable)this.FindResource("symTable");
ElementName
コードビハインドまたはXAMLでこれを行う他の方法を知っている人はいますか?コードビハインドで定義されたオブジェクトを参照していると思います。
symTable のクラス定義の一部を次に示します。
わかりましたので、最も奇妙なことに気付きました。Items.Addは INotifyChanged イベントを発生させていませんでした。私は Insert メソッドで Items.Add を使用しました。Items.Add は INotifyChanged イベントを発生させないため、ListBox は更新されていないと推測していますが、Items.Add の代わりに Add を実行すると、機能しました。これが実際に当てはまるかどうか知っていますか?
c# - 'yieldreturn'を使用して非同期シーケンスを監視する
次のサンプルは正常に機能します。
ただし、私が本当に望んでいるのは、コメント化された行を使用することです。つまり、「数値ジェネレーター」を非同期で実行し、新しい値が生成されるたびに、コンソールに出力する必要があります。動作しないようです-このコードを動作するように変更するにはどうすればよいですか?
system.reactive - Rx + WebRequest+XDocument.Loadを使用して変更された場合にのみXDocumentを取得します
私は次の2つの観測量を持っています
System.Net.WebRequest req = System.Net.HttpWebRequest.Create("http://test.com/data.xml");
req.Method = "HEAD";
var ob = Observable.FromAsyncPattern(req.BeginGetResponse, req.EndGetResponse);
ob().Select(x => x).Select(x => x.Headers["Last-Modified"]).DistinctUntilChanged(x => x);
Observable
.Interval(TimeSpan.FromSeconds(1.0))
.Select(_ => XDocument.Load("http://test.com/data.xml"));
XDocument observableは、「最終変更」ヘッダーが以前に要求されたドキュメントよりも大きい場合にのみ実行されるようにしたいと思います。
java - モデルの内部状態の変化に合わせて Java GUI を更新する
シミュレーション モデルの内部状態の変更に伴う GUI の更新に問題があります。クラス シミュレータは、特定のステップ数だけ実行されます。すべてのステップで、コンピューターの内部状態が変化します。その後、Gui は通知を受け取り、現在の状態のテキストを含むコンピューターのグラフィカル表現を再描画する必要があります。残念ながら、以下に詳述するクラスでは、GUI はシミュレーション実行の最後のステップの後にのみ変更を更新します。オブザーバー (コンピューター) とオブザーバブル (GUICanvas) パターンを使用しています。シミュレーションの中間ステップで GUI が再描画されないというのは、何が間違っているのでしょうか?
c# - 時間以外で Observable.Buffer を実行することは可能ですか?
rx で Observable.Buffer を使用する方法の例を探していましたが、ボイラー プレートの時間バッファリングされたものよりも実質的なものを見つけることができません。
「bufferClosingSelector」を指定するためのオーバーロードがあるようですが、私はそれを気にすることはできません。
私がやろうとしているのは、時間または「累積」によってバッファリングするシーケンスを作成することです。すべてのリクエストに何らかの重みがあり、一度に x 累積された重みを超えて処理したくないリクエスト ストリームを考えてみます。または、十分な量が蓄積されていない場合は、最後の時間枠 (通常のバッファ機能)
java - モデルが変更されたことをプレゼンターに通知する
MVPデザインパターンを使用しており、ビューのさまざまなボタンやその他のインタラクティブ要素のリスナーとしてプレゼンターを登録しています。そしてそれはうまく機能し、ユーザーがGUIで何らかのアクションを実行するたびに通知を受け取ります。
ただし、モデルが変更されたときにプレゼンターに通知する手順はありません。たとえば、Userモデルで処理され、Userオブジェクトの値を変更するサーバーからデータを受信しています。
Javaでモデルが変更されたことをプレゼンターにどのように通知しますか?
モデルにプレゼンターへの参照を保持させpresenter.userObjectHasBeenUpdated()
、Userオブジェクトを変更した後、モデル内のようなものを明示的に呼び出すことはできますか?または、Userオブジェクトが変更されたときに自動的に呼び出されるリスナーをUserオブジェクトに配置する方法はありますpresenter.userObjectHasBeenUpdated()
か?
knockout.js - KnockoutJS-ObservableオブジェクトのObservable配列
編集可能なアイテムのリストを表示したいと思います。各アイテムは編集可能です(ある意味、編集可能なグリッドのようなものです)。KnockoutJSを使用しています。ドキュメントに「observableArrayは、それらのオブジェクトの状態ではなく、配列内のオブジェクトを追跡する」と記載されているため、単純なObservableArrayだけを使用することはできません。
そこで、(utils.arrayMapを使用して)監視可能なオブジェクトのobservableArrayを作成し、それらをビューにバインドしました。ただし、問題は、画面上のデータを編集すると、ユーザーが画面上で行ったデータ入力の変更が有効に表示されないことです。http://jsfiddle.net/AndyThomas/E7xPM/を参照してください
私は何が間違っているのですか?
</ p>
java - オブザーバー パターンまたはその他のパターン
私は、かなり急いで開発しなければならない小さなユーティリティを開発している途中でした:(。実験のための時間がほとんどありません:(。実際には、ユーティリティには3つの主要な翼があります。そのうちの2つは、いくつかの異なるデータプールにデータを入力しています。データ プールの 1 つに座ってリッスンする必要があり、データ プールにデータが追加された瞬間にその機能が開始されます. 明らかに、すべてのウィングは 3 つの異なるスレッドとして実行されています. さて、私の質問は 3 番目のウィングについてです.オブザーバーとオブザーバブル パターンを使用するか、Java で利用可能な他の代替手段を使用する必要があります (そうです、f/w を使用する準備ができているものが必要です)。あまり研究開発を行っていません。申し訳ありませんが、少し時間がかかりました。実験用です。では、リスナー パターンのような印象を与える他のパターンはありますか?
ありがとう、マウィア
java - JavaのObservableクラスの代替?
私は C# の世界から Java に来ています。そこでは Observer パターンがevent
キーワードを使用したファーストクラスの言語構造として実装されています。
Java にObservable
は初期の頃からこのクラスがあったようですが、明らかに実装上の問題があり、広く使用されていないようです。これまでのところ、私は自分の Java コードでオブザーバー パターンの独自の実装を進めてきましたが、常にこのボイラープレート コードを生成するよりも優れた代替手段があるに違いないと常に考えずにはいられません。Swing には Listener クラスがありますが、Swing 以外のコードには適していないようです。
この非常に一般的な問題の推奨される解決策は何ですか? サードパーティのライブラリは私には問題ありません。
arrays - Ember.Arrayのネストされたプロパティを監視する方法
Stock
いくつかのモデルがあるとStockPartition
します(そのプロパティはpartitions
、その配列と呼ばれます)。
Stock
モデルには、usedAmount
すべての変更のいずれかが変更されたときに変更する必要があるプロパティがあります。partition.amount
もちろん、パーティションが追加/削除されたときに更新されます。
例 :
それぞれをどのようStock
に観察できpartitions.amount
ますか?私はこのような関数addPartition
を書くことができます:
しかし、もっと良い解決策があることを願っています。