誰かがWPFメニューからCallContextの内容を変更しようとしましたか? 私たちのアプリケーションでは、callcontextに環境文字列が格納されています。サーバー上では、db接続文字列(ILogicalThreadAffinative + .net remotingを使用しています)に変換されます。WPFメニューからのCallContextの変更
クライアントでは、環境を切り替えることができます。変更すると、新しいスレッド/ウィンドウに新しい環境があります。すべてのウィンドウには、ウィンドウタイトル内に環境があります。
問題は、これがMenuItemから実行されたとき、WPFがいくつかのスタックにCallContextをプッシュし、後でポップして変更できなくなっているようです。
私はメニューにコンボボックスを挿入することで解決しました。それはうまくいくようですが、それほどうまくありません。 誰かがこれを見て解決策を見つけましたか?
私はあなたが正しいと思う - 私はまた、実行コンテキストを調べた。私は、ウィンドウ内のボタンとメニュー内のコンボボックスからコールコンテキストを変更できますが、サブメニュー内の選択肢としてではなく、コールコンテキストを変更できることは矛盾しています。 callcontextの使い方はこれが意図したものだと思うので、バグかどうか疑問に思っていますか? –
私は小さなサンプルを試して、コールコンテキストはボタン、コンボボックス、メニューの両方でリセットされています。 callcontextは私にとっては空ですが、あなたが見ているものよりも一貫性があります。 –
私はそれをもう一度見て、私が思いつくことができるかどうかを見てみましょう - あなたがwpfからcallcontextを変更できないなら、それはいくつかの使い方を取ります。私の例では、最初からcallcontextを設定しています。問題を変更しようとしたときです。 –