私はこの問題に何週間も頭を悩ませてきたので、外部の助けを探す時が来たと思いました:-)
バインディングを使用する多数のコントロールを含むメイン ウィンドウを備えた WPF アプリケーションがあります。コントロールの 1 つは SharpGL コントロールです。
バインディングはすべて私のラップトップや他の高スペック マシンでは機能しますが、低スペック マシンでは確実に (またはまったく) 機能しません (私のラップトップはハイパースレッド クワッドで、失敗したテスト マシンの 1 つはデュアル コアです)。 . ラップトップで SharpGL コントロールのフレーム レートを上げると、バインディングが機能しなくなります。同様に、十分に遅くすると、デュアルコアマシンで動作し始めます(ただし、SharpGL コントロールは遅すぎて、必要なものに使用できません)。
注目に値する最後のことは、PropertyChanged イベントを処理してバインディングを手動で更新することで問題を解決できることですが、それではもうバインディングを行っていません。
だから私は本当にいくつかの質問があると思います:
1) 以前にこのような問題を見たことがありますか? それを解決する方法について何か考えはありますか?SharGL コントロールの存在に直接関係している可能性はありますか? 2) コントロール (この場合は SharpGL コントロール) が何らかの形で他のすべての要素でバインディングの更新を停止するような方法で失敗する可能性はありますか? 3) SharpGL コントロールによって発生し、私のコードで処理される Draw イベントが UI スレッドを十分にロードして、バインディングの更新が発生するのに十分な時間がないことは可能ですか?
前もって感謝します
マイク・ナッシュ