2011-08-30 299 views
1

wpfデータグリッドヘッダにカスタムソート方向イメージを表示するにはどうすればよいですか?DataGridヘッダのソート方向アイコン

私のデータグリッドでこのスタイルを使用します。昇順と降順の並べ替え方向の画像を追加するにはどうすればよいですか?

<Style x:Key="DataGridColumnHeaderStyle" TargetType="{x:Type DataGridColumnHeader}" > 
     <Setter Property="Background"> 
      <Setter.Value> 
       <LinearGradientBrush StartPoint="0,0" EndPoint="0,1"> 
        <GradientStop Color="#fbfdfc" Offset="0.1" /> 
        <GradientStop Color="#d4d5d9" Offset="0.9" /> 
       </LinearGradientBrush> 
      </Setter.Value> 
     </Setter> 
     <Setter Property="VerticalContentAlignment" Value="Center" /> 
     <Setter Property="Foreground" Value="Black" /> 
     <Setter Property="Padding" Value="3"/> 
     <Style.Triggers> 
      <MultiTrigger> 
       <MultiTrigger.Conditions> 
        <Condition Property="IsMouseOver" Value="True" /> 
        <Condition Property="SortDirection" Value="{x:Null}" /> 
       </MultiTrigger.Conditions> 
       <Setter Property="Background"> 
        <Setter.Value> 
         <LinearGradientBrush StartPoint="0,0" EndPoint="0,1"> 
          <GradientStop Color="#ffd8a8" Offset="0.0" /> 
          <GradientStop Color="#ffad41" Offset="0.5" /> 
          <GradientStop Color="#fedf78" Offset="0.9" /> 
         </LinearGradientBrush> 
        </Setter.Value> 
       </Setter> 
       <Setter Property="BorderBrush" Value="Black" /> 
      </MultiTrigger> 
     </Style.Triggers> 
    </Style> 
+0

この質問はSilverlightまたはWPF DataGridですか? –

+0

デスクトップwpfデータグリッド – Troydm

+0

Silverlightまたはwpfの場合は問題ありません。どちらもXAMLと両方のスタイルを使用しています – Rumplin

答えて

2

あなたがTemplateをオーバーライドする必要が三角形を変更したい場合は、SortDirectionでトリガし、それに応じて異なる画像を表示することができます。 (デフォルトテンプレートを取得from MSDNDefault WPF Themesリンク)

関連する問題