2

テンプレート セレクターを使用したタブ付きコントロールがあり、WebBrowser コンポーネントを含む正しいテンプレートが選択されます。キーボード (上/下矢印) を使用すると、アプリケーションの残りの部分と Web ページの間で KeyBoardFocus がトグルします。

snoop を使用すると、含まれている ContentControl の Focusable プロパティを false に設定することで WebBrowser コントロールを動作させることができますが、ContentControl プロパティをプログラムで設定する場所/方法がわかりません!

スヌープからのスニペット:

    PART_SelectedContentHost はテーマからのものです (Focusable == False)
    ContentControl (Focusable == **True**) [どこから来たの? 「コンテンツ」はViewModelです]
    ContentPresenter (Focusable == False) [どこから来たの?]
    WebPageView (私の作成したコンポーネント、Focusable == False)
    ... (フォーカス可能 == False)
    wbContent (フォーカス可能 == True)

PART_SelectedContentHost の ContentPresenter でターゲット スタイル リソースを使用しようとしましたが、うまくいきませんでした。

誰でもアイデアはありますか?

ありがとう

4

1 に答える 1

1

タブ コントロールから派生させてみてください。OnApplyTemplate メソッドをオーバーライドし、名前で contentcontrol を見つけます。見つかったら、そのプロパティを変更します。

于 2012-09-29T18:28:52.570 に答える