2012-03-26 23 views
1

私はWPFフォームを開くVSTO(.net 4)Outlookアドインを持っています。VSTOのWPFフォームOutlookアドイン - データ入力の問題

フォームには2つのテキストボックスを含む多数のコントロールがあります。

電子メールエクスプローラで電子メールを選択したときにフォームを開くと、すべてが正常に機能します。

しかし...

私は電子メールの本文をクリックすることで、任意の電子メールの焦点を与えているときに私は(メッセージ自体IE)フォームを開く場合は、私のフォーム上のテキストボックスには、スペースキーを受け入れないだろうかCtrl + C、Ctrl + Vなどのキーの組み合わせ。 たとえば、Spaceを押すと、Outlookがバックグラウンドで次のメールに切り替わります。

これは既知の問題であることが判明しましたが、回避策として、フォームを開く直前に電子メールエクスプローラにフォーカスを設定することができました。

どのように私はこれを行うことができます知っていますか?

ソリューション

OKは、SliverNinjaのおかげで、私は再び表示され、その後消え、プレビューペインで選択したメールを作成し、この回避策を管理してきましたが、それは私のために十分である動作します...

var app = new Microsoft.Office.Interop.Outlook.Application(); 
var activeExplorer = app.ActiveExplorer(); 

var previewPaneVisibility = activeExplorer.IsPaneVisible(OlPane.olPreview); 
activeExplorer.ShowPane(OlPane.olPreview, false); 
activeExplorer.ShowPane(OlPane.olPreview, previewPaneVisibility); 

答えて

1

これらが確認されていませんが、ここではあなたのためにいくつかのアイデアがある...

あなたはをリセットしてみてください10フォーカスを変更します。 Outlook 2010を使用している場合は、Explorer.ClearSelectionExplorer.AddToSelectionにアクセスできます。 Explorer.Activateもフォーカスを変更することがあります - 私はしかし、2010をチェックする必要はありません。

メッセージプレビューペインを非表示にするか、またはそれを切り替えることも考えられます。 Explorer.ShowPaneおよびExplorer.IsPaneVisibleを参照してください。

この他に可能な解決策は、VSTO COMラッパーの境界を越えて下位レベルのインターフェイスを掘り下げることです。下位レベルの動作のチェックアウトIDTExtensibility2

+0

こんにちはSliverNinja、ありがとうの提案 - 私はそれらを試してみるとあなたに戻ってきます。 – Drammy

+0

SliverNinjaありがとうございました。私はプレビューウィンドウの焦点をずらすことができました。私はあなたの提案が提供する解決策で質問を更新しました。 – Drammy

+0

素敵な@ドラマ!私たちのためにソリューションをポストバックしてくれてありがとう。 – SliverNinja

0

私はこれが古い問題だと知っていますが、この問題もあり、新しいスレッドでWPFウィンドウを開くことで解決しました。

+0

おかげでRob、それは良いアイデアのように聞こえる - 私は別のVSTOアドインを歓迎します。 (誰があなたの答えをマークしたのかわからない、なぜ?!..あなたに戻ってマークしたので) – Drammy

+0

Thanks、Drammy!私は理由も知らないが、それはこのフォーラムの私の最初の投稿だったので、私は質問したくなかった: –