Skip to content

Commit

Permalink
Fix bug where sort icon occupies space even when not shown (#48)
Browse files Browse the repository at this point in the history
  • Loading branch information
Kinnara committed Mar 26, 2020
1 parent 9280388 commit 7b1e56e
Showing 1 changed file with 23 additions and 13 deletions.
36 changes: 23 additions & 13 deletions ModernWpf/Styles/DataGrid.xaml
Original file line number Diff line number Diff line change
Expand Up @@ -172,20 +172,16 @@
<VisualState x:Name="Unsorted" />
<VisualState x:Name="SortAscending">
<Storyboard>
<DoubleAnimation
Storyboard.TargetName="SortIcon"
Storyboard.TargetProperty="Opacity"
Duration="0"
To="1" />
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="SortIcon" Storyboard.TargetProperty="Visibility">
<DiscreteObjectKeyFrame KeyTime="0" Value="{x:Static Visibility.Visible}" />
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
<VisualState x:Name="SortDescending">
<Storyboard>
<DoubleAnimation
Storyboard.TargetName="SortIcon"
Storyboard.TargetProperty="Opacity"
Duration="0"
To="1" />
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="SortIcon" Storyboard.TargetProperty="Visibility">
<DiscreteObjectKeyFrame KeyTime="0" Value="{x:Static Visibility.Visible}" />
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="SortIcon" Storyboard.TargetProperty="Glyph">
<DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource SortIconDescending}" />
</ObjectAnimationUsingKeyFrames>
Expand All @@ -211,15 +207,21 @@
Margin="{TemplateBinding Padding}">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition MinWidth="32" Width="Auto" />
<ColumnDefinition x:Name="SortIconColumn" MinWidth="32" Width="Auto" />
</Grid.ColumnDefinitions>

<ContentPresenter
Content="{TemplateBinding Content}"
HorizontalAlignment="Left"
VerticalAlignment="Center"
RecognizesAccessKey="True"
SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" />
SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}">
<ContentPresenter.Resources>
<Style TargetType="TextBlock">
<Setter Property="TextTrimming" Value="CharacterEllipsis" />
</Style>
</ContentPresenter.Resources>
</ContentPresenter>

<local:FontIcon
Grid.Column="1"
Expand All @@ -230,7 +232,7 @@
Foreground="{DynamicResource DataGridColumnHeaderForegroundBrush}"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Opacity="0" />
Visibility="Collapsed" />
</Grid>
<Rectangle
x:Name="VerticalSeparator"
Expand Down Expand Up @@ -281,10 +283,18 @@
<Trigger Property="IsPressed" Value="True">
<Setter TargetName="BackgroundRectangle" Property="Fill" Value="{DynamicResource DataGridColumnHeaderPressedBackgroundBrush}" />
</Trigger>
<Trigger Property="SortDirection" Value="{x:Null}">
<Setter TargetName="SortIconColumn" Property="MinWidth" Value="0" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
<Style.Triggers>
<Trigger Property="SortDirection" Value="{x:Null}">
<Setter Property="Padding" Value="12,0" />
</Trigger>
</Style.Triggers>
</Style>

<!--<Style TargetType="DataGridColumnHeader" BasedOn="{StaticResource DefaultDataGridColumnHeaderStyle}" />-->
Expand Down

0 comments on commit 7b1e56e

Please sign in to comment.