WPFアプリケーションに検索画面があります。画面は、TabControlのTabItemにUserControlとして実装されます。ユーザーが[検索]タブに切り替えたときに、特定の1つのフィールドにフォーカスを移したいと思います。
そこで、XamlのUserControlタグにLoadedイベントハンドラーを追加し、Loadedイベントハンドラーで最初のフォーカスを取得したいコントロールのFocusメソッドを呼び出しました。これは、今日使用しているTelerikコントロールライブラリをアップグレードするまではうまく機能しました。ここで、[検索]タブに切り替えると、フォーカスが必要なフィールドにありませんが、どのコントロールにフォーカスがあるのかわかりません。
私が焦点を合わせたいフィールドには、他の理由ですでにGotFocus&LostFocusイベントハンドラーがあります。Win Formsでは、LostFocusイベントハンドラー引数が、どのコントロールがフォーカスを取得するかを示していることを思い出しました。そこで、LostFocusハンドラーにブレークポイントを設定し、WPFのLostFocusイベントハンドラーへの引数にその情報が含まれていないことを発見しました。
UserControlのすべてのコントロールにGotFocusハンドラーを配置せずに、フォーカスがどこに向かっているのかをどのように把握できますか?
トニー