2017-01-20 9 views
0

私はハイブリッドアプリケーションを持っています - VB6アプリケーションは、CCWメカニズムを介していくつかの.NET WPFフォームを呼び出すことができます。これらのフォームは、 'ShowDialog'メソッドでCCWから表示されている場合、TABナビゲーションを含むユーザー入力(キーボード+マウス)を正しく処理します。非モーダルメソッド 'Show'を使用すると、次のような動作が発生します.Netフォームはナビゲーションキー(Tab、矢印キー)を使用して非アクティブ化され、ルートVB6フォームがアクティブになります。この現象を防ぐ方法を教えてください。.NET CCW:WPFフォーム非アクティブ化問題

+0

ShowDialogを使用します。 –

+0

新しい要件が出現する前に動作しました。当初、私たちは一方向のコミュニケーションを持っています。 VB6のみが.NETを呼び出すことができます。しかし今はCOM技術を使って双方向通信を実装する必要があります:接続ポイント。 Callieオブジェクト(COM)は、特別なインターフェイスで定義されたイベントによって呼び出し元に通知することができます。 ShowDialogメソッドを使用すると、VB6への通知のUIスレッドがブロックされます –

+0

両方のアプリケーションの内部にアクセスできますか?つまり、コードですか? –

答えて

0

これはまったく問題ではありませんでした。 VB6に関連する機能です(.NETやCCWではなく)。記述された動作は、 'ForwardFocus = false'のようなデフォルトのプロパティを持つユーザーコントロールを含むいくつかのフォームによるものです。プロパティ値を 'true'に設定すると、すべてが正常に動作します。

関連する問題