silverlight   发布时间:2022-05-03  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了wpf – 应用Column头文件后,如何添加排序箭头大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

概述

将背景颜色应用于柱头后,排序箭头就会丢失。如何添加回来? 我想你必须重新模板DataGridcolumnHeader并从中添加它。这是一个例子。你必须添加一个对PresentationFramework.Aero的引用 xmlns:Themes="clr-namespace:Microsoft.Windows.Themes;assembly=PresentationFramework.Aero"
将背景颜色应用于柱头后,排序箭头就会丢失。如何@L_772_0@回来?

解决方法

我想你必须重新模板DataGridcolumnHeader并从中@L_772_0@它。这是一个例子。你必须@L_772_0@一个对PresentationFramework.Aero的引用

xmlns:Themes="clr-namespace:Microsoft.Windows.Themes;assembly=PresentationFramework.Aero"

<DataGrid ...>
    <DataGrid.resources>
        <Style x:Key="columnHeaderGripperStyle" TargetType="{x:Type Thumb}">
            <Setter Property="Width" Value="8"/>
            <Setter Property="BACkground" Value="Transparent"/>
            <Setter Property="cursor" Value="SizeWE"/>
            <Setter Property="Template">
                <Setter.Value>
                    <ControlTemplate TargetType="{x:Type Thumb}">
                        <Border BACkground="{TemplateBinding BACkgrounD}" Padding="{TemplateBinding Padding}"/>
                    </ControlTemplate>
                </Setter.Value>
            </Setter>
        </Style>
        <Style TargetType="{x:Type DataGridcolumnHeader}">
            <Setter Property="BACkground" Value="Blue"/>
            <Setter Property="BorderBrush" Value="Red"/>
            <Setter Property="BorderThickness" Value="1,1,1"/>
            <Setter Property="Template">
                <Setter.Value>
                    <ControlTemplate TargetType="{x:Type DataGridcolumnHeader}">
                        <Grid>
                            <Themes:DataGridHeaderBorder BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" BACkground="{TemplateBinding BACkgrounD}" IsClickable="{TemplateBinding CanUserSort}" IsPressed="{TemplateBinding IsPresseD}" IsHovered="{TemplateBinding IsMouSEOver}" Padding="{TemplateBinding Padding}" SortDirection="{TemplateBinding SortDirection}" SeparatorBrush="{TemplateBinding SeparatorBrush}" SeparatorVisibility="{TemplateBinding SeparatorVisibility}">
                                <Grid>
                                    <Grid.columnDeFinitions>
                                        <columnDeFinition Width="Auto"/>
                                        <columnDeFinition Width="*"/>
                                    </Grid.columnDeFinitions>
                                    <ContentPresenter Grid.column="0" HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}"/>
                                    <Path x:Name="SortArrow"
                                            Grid.column="1"
                                            HorizontalAlignment="Right" VerticalAlignment="Center"                                           
                                            Width="8" Height="6" Margin="2,5,0"
                                            Stretch="Fill" Opacity="0.5" Fill="White"
                                            RenderTransformOrigin="0.5,0.4"
                                            Visibility="Collapsed"
                                            Data="M0,0 L1,0 0.5,1 z" />
                                </Grid>
                            </Themes:DataGridHeaderBorder>
                            <Thumb x:Name="PART_LeftHeaderGripper" HorizontalAlignment="Left" Style="{Staticresource columnHeaderGripperStylE}"/>
                            <Thumb x:Name="PART_RightHeaderGripper" HorizontalAlignment="Right" Style="{Staticresource columnHeaderGripperStylE}"/>
                        </Grid>
                        <ControlTemplate.triggers>
                            <trigger Property="SortDirection" Value="Ascending">
                                <Setter TargetName="SortArrow" Property="Visibility" Value="Visible" />
                                <Setter TargetName="SortArrow" Property="RenderTransform">
                                    <Setter.Value>
                                        <RotateTransform Angle="180" />
                                    </Setter.Value>
                                </Setter>
                            </trigger>
                            <trigger Property="SortDirection" Value="Descending">
                                <Setter TargetName="SortArrow" Property="Visibility" Value="Visible" />
                            </trigger>
                        </ControlTemplate.triggers>
                    </ControlTemplate>
                </Setter.Value>
            </Setter>
        </Style>
    </DataGrid.resources>
</DataGrid>

大佬总结

以上是大佬教程为你收集整理的wpf – 应用Column头文件后,如何添加排序箭头全部内容,希望文章能够帮你解决wpf – 应用Column头文件后,如何添加排序箭头所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。