2

私が達成したいことは簡単に説明できます。選択されている場合は、wpf-tabitemの背景色を変更します(ウィンドウの背景に合わせる必要があります)。デフォルトのコントロールの他のすべてのプロパティは同じままである必要があります。

私が思いついたダンプソリューションは、デフォルトのスタイル全体を自分にコピーして、次のセクションResourceDictionaryの色を置き換えることです。#FFF9F9F9

 <Trigger Property="Selector.IsSelected">
  /* ..... cutting some lines here ....*>
  <Setter Property="Panel.Background" TargetName="Bd">
   <Setter.Value>
    <SolidColorBrush>
    #FFF9F9F9</SolidColorBrush>
   </Setter.Value>
  </Setter>

明らかに、私はこれが好きではなく、継承を適用​​しようとしました(BasedOn="{StaticResource {x:Type TabItem}}")。これは効果がありませんでした。次に、テンプレート設定を試しました。ただし、「Bd」でavobeを参照している、デフォルトのテンプレートで境界線を処理できませんでした。ContentTemplatedに境界線を追加することはできましたが、デフォルトのTabItemの他のすべての機能(マウスオーバーなど)がなくなりました。

デフォルトのテンプレート全体をコピーせずにこの色のプロパティを変更する方法のヒントを誰かに教えてもらえますか?助けていただければ幸いです。

4

1 に答える 1

0

色がデフォルトテンプレートのプロパティ(などBackground)にリンクされていない場合は、テンプレートを編集済みのコピーに置き換える必要があります。他の(許容できる)変更方法はありません。

于 2012-10-03T16:28:34.757 に答える