WPF中重写DataGrid的列头的样式后,列宽不能左右拖动的解决办法

11 篇文章 0 订阅

在样式中添加:<Thumb x:Name="PART_RightHeaderGripper"
                                Cursor="SizeWE" 
                             HorizontalAlignment="Right" 
                                Width="1"
                                Height="25"
                                VerticalAlignment="Center" >
                                <Thumb.BitmapEffect>
                                    <DropShadowBitmapEffect Color="#000"
                                                         Direction="-90" ShadowDepth="2" Softness="0.1" Opacity="0.3" />
                                </Thumb.BitmapEffect>
                            </Thumb>

注意:如果x:Name="PART_RightHeaderGripper" 不能用,  试试 x:Name="PART_HeaderGripper" 或 x:Name="PART_LeftHeaderGripper"

 

例子:XMAL中:

<Style TargetType="DataGridColumnHeader">
        <Setter Property="SnapsToDevicePixels" Value="True" />
        <Setter Property="MinWidth" Value="0" />
        <Setter Property="Foreground" Value="#666666" />
        <Setter Property="FontSize" Value="12" />
        <Setter Property="Cursor" Value="Hand" />
        <Setter Property="Height" Value="25"/>
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="DataGridColumnHeader">
                    <Border x:Name="BackgroundBorder" BorderThickness="0,1,0,1" Background="#FFFFFF" 
                             BorderBrush="#CCCACB" 
                              Width="Auto">
                        <Grid >
                            <Grid.ColumnDefinitions>
                                <ColumnDefinition Width="*" />
                            </Grid.ColumnDefinitions>
                            <ContentPresenter Margin="0,0,0,0" VerticalAlignment="Center" HorizontalAlignment="Center"/>
                            <Path x:Name="SortArrow" Data="M0,0 L1,0 0.5,1 z" Stretch="Fill" Grid.Column="2" Width="8" Height="6" Fill="White" Margin="0,0,0,0" 
                            VerticalAlignment="Top" RenderTransformOrigin="1,1" />
                            <Rectangle Width="1" Fill="#CCCACB" HorizontalAlignment="Right" />
                           
                            <Thumb x:Name="PART_RightHeaderGripper"
                                Cursor="SizeWE" 
                             HorizontalAlignment="Right" 
                                Width="1"
                                Height="25"
                                VerticalAlignment="Center" >
                                <Thumb.BitmapEffect>
                                    <DropShadowBitmapEffect Color="#000"
                                                         Direction="-90" ShadowDepth="2" Softness="0.1" Opacity="0.3" />
                                </Thumb.BitmapEffect>


                            </Thumb>
                        </Grid>
                    </Border>
                </ControlTemplate>

            </Setter.Value>
        </Setter>
    </Style>

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值