mirror of
https://github.com/QL-Win/QuickLook.git
synced 2025-09-02 02:44:41 +00:00
354 lines
20 KiB
XML
354 lines
20 KiB
XML
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
|
xmlns:system="clr-namespace:System;assembly=System.Runtime">
|
|
|
|
<Style x:Key="{x:Type DataGrid}" TargetType="{x:Type DataGrid}">
|
|
<Setter Property="Background" Value="{DynamicResource {x:Static SystemColors.ControlBrushKey}}" />
|
|
<Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.ControlTextBrushKey}}" />
|
|
<Setter Property="BorderBrush" Value="#FF688CAF" />
|
|
<Setter Property="BorderThickness" Value="1" />
|
|
<Setter Property="RowDetailsVisibilityMode" Value="VisibleWhenSelected" />
|
|
<Setter Property="ScrollViewer.CanContentScroll" Value="true" />
|
|
<Setter Property="ScrollViewer.PanningMode" Value="Both" />
|
|
<Setter Property="Stylus.IsFlicksEnabled" Value="False" />
|
|
<Setter Property="Template">
|
|
<Setter.Value>
|
|
<ControlTemplate TargetType="{x:Type DataGrid}">
|
|
<Border Padding="{TemplateBinding Padding}"
|
|
Background="{TemplateBinding Background}"
|
|
BorderBrush="{TemplateBinding BorderBrush}"
|
|
BorderThickness="{TemplateBinding BorderThickness}"
|
|
SnapsToDevicePixels="True">
|
|
<ScrollViewer Name="DG_ScrollViewer" Focusable="false">
|
|
<ScrollViewer.Template>
|
|
<ControlTemplate TargetType="{x:Type ScrollViewer}">
|
|
<Grid>
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition Height="Auto" />
|
|
<RowDefinition Height="*" />
|
|
<RowDefinition Height="Auto" />
|
|
</Grid.RowDefinitions>
|
|
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="Auto" />
|
|
<ColumnDefinition Width="*" />
|
|
<ColumnDefinition Width="Auto" />
|
|
</Grid.ColumnDefinitions>
|
|
|
|
<!-- Left Column Header Corner -->
|
|
<Button Width="{Binding RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}, Path=CellsPanelHorizontalOffset}"
|
|
Command="{x:Static DataGrid.SelectAllCommand}"
|
|
Focusable="false"
|
|
Style="{DynamicResource {ComponentResourceKey TypeInTargetAssembly={x:Type DataGrid},
|
|
ResourceId=DataGridSelectAllButtonStyle}}"
|
|
Visibility="{Binding RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}, Path=HeadersVisibility, Converter={x:Static DataGrid.HeadersVisibilityConverter}, ConverterParameter={x:Static DataGridHeadersVisibility.All}}" />
|
|
<!-- Column Headers -->
|
|
<DataGridColumnHeadersPresenter Name="PART_ColumnHeadersPresenter"
|
|
Grid.Column="1"
|
|
Visibility="{Binding RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}, Path=HeadersVisibility, Converter={x:Static DataGrid.HeadersVisibilityConverter}, ConverterParameter={x:Static DataGridHeadersVisibility.Column}}" />
|
|
|
|
<!-- DataGrid content -->
|
|
<ScrollContentPresenter x:Name="PART_ScrollContentPresenter"
|
|
Grid.Row="1"
|
|
Grid.ColumnSpan="2"
|
|
CanContentScroll="{TemplateBinding CanContentScroll}" />
|
|
|
|
<ScrollBar Name="PART_VerticalScrollBar"
|
|
Grid.Row="1"
|
|
Grid.Column="2"
|
|
Maximum="{TemplateBinding ScrollableHeight}"
|
|
Orientation="Vertical"
|
|
ViewportSize="{TemplateBinding ViewportHeight}"
|
|
Visibility="{TemplateBinding ComputedVerticalScrollBarVisibility}"
|
|
Value="{Binding Path=VerticalOffset, RelativeSource={RelativeSource TemplatedParent}, Mode=OneWay}" />
|
|
|
|
<Grid Grid.Row="2" Grid.Column="1">
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="{Binding RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}, Path=NonFrozenColumnsViewportHorizontalOffset}" />
|
|
<ColumnDefinition Width="*" />
|
|
</Grid.ColumnDefinitions>
|
|
<ScrollBar Name="PART_HorizontalScrollBar"
|
|
Grid.Column="1"
|
|
Maximum="{TemplateBinding ScrollableWidth}"
|
|
Orientation="Horizontal"
|
|
ViewportSize="{TemplateBinding ViewportWidth}"
|
|
Visibility="{TemplateBinding ComputedHorizontalScrollBarVisibility}"
|
|
Value="{Binding Path=HorizontalOffset, RelativeSource={RelativeSource TemplatedParent}, Mode=OneWay}" />
|
|
|
|
</Grid>
|
|
</Grid>
|
|
</ControlTemplate>
|
|
</ScrollViewer.Template>
|
|
<ItemsPresenter SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" />
|
|
</ScrollViewer>
|
|
</Border>
|
|
</ControlTemplate>
|
|
</Setter.Value>
|
|
</Setter>
|
|
<Style.Triggers>
|
|
<MultiTrigger>
|
|
<MultiTrigger.Conditions>
|
|
<Condition Property="IsGrouping" Value="true" />
|
|
<Condition Property="VirtualizingPanel.IsVirtualizingWhenGrouping" Value="false" />
|
|
</MultiTrigger.Conditions>
|
|
<Setter Property="ScrollViewer.CanContentScroll" Value="false" />
|
|
</MultiTrigger>
|
|
</Style.Triggers>
|
|
</Style>
|
|
|
|
<Style x:Key="{x:Type DataGridColumnHeadersPresenter}" TargetType="{x:Type DataGridColumnHeadersPresenter}">
|
|
<Setter Property="Template">
|
|
<Setter.Value>
|
|
<ControlTemplate TargetType="{x:Type DataGridColumnHeadersPresenter}">
|
|
<Grid>
|
|
<DataGridColumnHeader Name="PART_FillerColumnHeader" IsHitTestVisible="False" />
|
|
<ItemsPresenter />
|
|
</Grid>
|
|
</ControlTemplate>
|
|
</Setter.Value>
|
|
</Setter>
|
|
</Style>
|
|
|
|
|
|
<Style x:Key="á" 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 Padding="{TemplateBinding Padding}" Background="{TemplateBinding Background}" />
|
|
</ControlTemplate>
|
|
</Setter.Value>
|
|
</Setter>
|
|
</Style>
|
|
|
|
<Style x:Key="â" TargetType="{x:Type Thumb}">
|
|
<Setter Property="Height" Value="8" />
|
|
<Setter Property="Background" Value="Transparent" />
|
|
<Setter Property="Cursor" Value="SizeNS" />
|
|
<Setter Property="Template">
|
|
<Setter.Value>
|
|
<ControlTemplate TargetType="{x:Type Thumb}">
|
|
<Border Padding="{TemplateBinding Padding}" Background="{TemplateBinding Background}" />
|
|
</ControlTemplate>
|
|
</Setter.Value>
|
|
</Setter>
|
|
</Style>
|
|
|
|
<Style x:Key="{x:Static DataGridColumnHeader.ColumnFloatingHeaderStyleKey}" TargetType="{x:Type Control}">
|
|
<Setter Property="Opacity" Value="0.6" />
|
|
<Setter Property="BorderBrush" Value="#FF688CAF" />
|
|
<Setter Property="BorderThickness" Value="1" />
|
|
<Setter Property="Template">
|
|
<Setter.Value>
|
|
<ControlTemplate TargetType="{x:Type Control}">
|
|
<Border Padding="{TemplateBinding Padding}"
|
|
Background="{TemplateBinding Background}"
|
|
BorderBrush="{TemplateBinding BorderBrush}"
|
|
BorderThickness="{TemplateBinding BorderThickness}">
|
|
<Grid>
|
|
<Canvas Name="PART_VisualBrushCanvas" Margin="{TemplateBinding Margin}" />
|
|
</Grid>
|
|
</Border>
|
|
</ControlTemplate>
|
|
</Setter.Value>
|
|
</Setter>
|
|
</Style>
|
|
|
|
<Style x:Key="{x:Static DataGridColumnHeader.ColumnHeaderDropSeparatorStyleKey}" TargetType="{x:Type Separator}">
|
|
<Setter Property="Background" Value="#FF000080" />
|
|
<Setter Property="Template">
|
|
<Setter.Value>
|
|
<ControlTemplate TargetType="{x:Type Separator}">
|
|
<Border Background="{TemplateBinding Background}"
|
|
BorderBrush="{TemplateBinding BorderBrush}"
|
|
BorderThickness="{TemplateBinding BorderThickness}"
|
|
SnapsToDevicePixels="True" />
|
|
</ControlTemplate>
|
|
</Setter.Value>
|
|
</Setter>
|
|
</Style>
|
|
|
|
<Style x:Key="{x:Type DataGridRow}" TargetType="{x:Type DataGridRow}">
|
|
<Setter Property="Background" Value="{DynamicResource {x:Static SystemColors.WindowBrushKey}}" />
|
|
<Setter Property="SnapsToDevicePixels" Value="true" />
|
|
<Setter Property="Validation.ErrorTemplate" Value="{x:Null}" />
|
|
<Setter Property="ValidationErrorTemplate">
|
|
<Setter.Value>
|
|
<ControlTemplate>
|
|
<TextBlock Margin="2,0,0,0"
|
|
VerticalAlignment="Center"
|
|
Foreground="Red"
|
|
Text="!" />
|
|
</ControlTemplate>
|
|
</Setter.Value>
|
|
</Setter>
|
|
<Setter Property="Template">
|
|
<Setter.Value>
|
|
<ControlTemplate TargetType="{x:Type DataGridRow}">
|
|
<Border x:Name="DGR_Border"
|
|
Background="{TemplateBinding Background}"
|
|
BorderBrush="{TemplateBinding BorderBrush}"
|
|
BorderThickness="{TemplateBinding BorderThickness}"
|
|
SnapsToDevicePixels="True">
|
|
<SelectiveScrollingGrid>
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="Auto" />
|
|
<ColumnDefinition Width="*" />
|
|
</Grid.ColumnDefinitions>
|
|
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition Height="*" />
|
|
<RowDefinition Height="Auto" />
|
|
</Grid.RowDefinitions>
|
|
|
|
<DataGridCellsPresenter Grid.Column="1"
|
|
ItemsPanel="{TemplateBinding ItemsPanel}"
|
|
SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" />
|
|
|
|
<DataGridDetailsPresenter Grid.Row="1"
|
|
Grid.Column="1"
|
|
SelectiveScrollingGrid.SelectiveScrollingOrientation="{Binding RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}, Path=AreRowDetailsFrozen, Converter={x:Static DataGrid.RowDetailsScrollingConverter}, ConverterParameter={x:Static SelectiveScrollingOrientation.Vertical}}"
|
|
Visibility="{TemplateBinding DetailsVisibility}" />
|
|
|
|
<DataGridRowHeader Grid.RowSpan="2"
|
|
SelectiveScrollingGrid.SelectiveScrollingOrientation="Vertical"
|
|
Visibility="{Binding RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}, Path=HeadersVisibility, Converter={x:Static DataGrid.HeadersVisibilityConverter}, ConverterParameter={x:Static DataGridHeadersVisibility.Row}}" />
|
|
</SelectiveScrollingGrid>
|
|
</Border>
|
|
</ControlTemplate>
|
|
</Setter.Value>
|
|
</Setter>
|
|
<Style.Triggers>
|
|
<Trigger Property="IsNewItem" Value="True">
|
|
<Setter Property="Margin" Value="{Binding RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}, Path=NewItemMargin}" />
|
|
</Trigger>
|
|
</Style.Triggers>
|
|
</Style>
|
|
|
|
<Style x:Key="{x:Type DataGridCellsPresenter}" TargetType="{x:Type DataGridCellsPresenter}">
|
|
<Setter Property="Template">
|
|
<Setter.Value>
|
|
<ControlTemplate TargetType="{x:Type DataGridCellsPresenter}">
|
|
<ItemsPresenter />
|
|
</ControlTemplate>
|
|
</Setter.Value>
|
|
</Setter>
|
|
</Style>
|
|
|
|
<SolidColorBrush x:Key="{x:Static DataGrid.FocusBorderBrushKey}" Color="#3300BFFF" />
|
|
|
|
<Thickness x:Key="ã">1.5</Thickness>
|
|
|
|
<Style x:Key="{x:Type DataGridCell}" TargetType="{x:Type DataGridCell}">
|
|
<Setter Property="Background" Value="Transparent" />
|
|
<Setter Property="BorderBrush" Value="Transparent" />
|
|
<Setter Property="BorderThickness" Value="1" />
|
|
<Setter Property="Template">
|
|
<Setter.Value>
|
|
<ControlTemplate TargetType="{x:Type DataGridCell}">
|
|
<Border Name="Bd"
|
|
Background="{TemplateBinding Background}"
|
|
BorderBrush="{TemplateBinding BorderBrush}"
|
|
BorderThickness="{TemplateBinding BorderThickness}"
|
|
SnapsToDevicePixels="True">
|
|
<ContentPresenter SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" />
|
|
</Border>
|
|
<ControlTemplate.Triggers>
|
|
<MultiDataTrigger>
|
|
<MultiDataTrigger.Conditions>
|
|
<Condition Binding="{Binding Path=(SystemParameters.HighContrast)}" Value="true" />
|
|
<Condition Binding="{Binding Path=IsKeyboardFocused, RelativeSource={RelativeSource Self}}" Value="true" />
|
|
</MultiDataTrigger.Conditions>
|
|
<Setter TargetName="Bd" Property="BorderBrush" Value="{DynamicResource {x:Static SystemColors.HighlightTextBrushKey}}" />
|
|
<Setter TargetName="Bd" Property="BorderThickness" Value="{StaticResource ã}" />
|
|
</MultiDataTrigger>
|
|
</ControlTemplate.Triggers>
|
|
</ControlTemplate>
|
|
</Setter.Value>
|
|
</Setter>
|
|
<Style.Triggers>
|
|
<Trigger Property="IsSelected" Value="True">
|
|
<Setter Property="Background" Value="{DynamicResource {x:Static SystemColors.HighlightBrushKey}}" />
|
|
<Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.HighlightTextBrushKey}}" />
|
|
<Setter Property="BorderBrush" Value="{DynamicResource {x:Static SystemColors.HighlightBrushKey}}" />
|
|
</Trigger>
|
|
<Trigger Property="IsKeyboardFocusWithin" Value="True">
|
|
<Setter Property="BorderBrush" Value="{DynamicResource {x:Static DataGrid.FocusBorderBrushKey}}" />
|
|
</Trigger>
|
|
<MultiTrigger>
|
|
<MultiTrigger.Conditions>
|
|
<Condition Property="IsSelected" Value="true" />
|
|
<Condition Property="Selector.IsSelectionActive" Value="false" />
|
|
</MultiTrigger.Conditions>
|
|
<Setter Property="Background" Value="{DynamicResource {x:Static SystemColors.InactiveSelectionHighlightBrushKey}}" />
|
|
<Setter Property="BorderBrush" Value="{DynamicResource {x:Static SystemColors.InactiveSelectionHighlightBrushKey}}" />
|
|
<Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.InactiveSelectionHighlightTextBrushKey}}" />
|
|
</MultiTrigger>
|
|
<Trigger Property="IsEnabled" Value="false">
|
|
<Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.GrayTextBrushKey}}" />
|
|
</Trigger>
|
|
<MultiDataTrigger>
|
|
<MultiDataTrigger.Conditions>
|
|
<Condition Binding="{Binding Path=(SystemParameters.HighContrast)}" Value="true" />
|
|
</MultiDataTrigger.Conditions>
|
|
<Setter Property="FocusVisualStyle" Value="{x:Null}" />
|
|
</MultiDataTrigger>
|
|
</Style.Triggers>
|
|
</Style>
|
|
|
|
<Style x:Key="{x:Static DataGridComboBoxColumn.TextBlockComboBoxStyleKey}" TargetType="{x:Type ComboBox}">
|
|
<Setter Property="Template">
|
|
<Setter.Value>
|
|
<ControlTemplate TargetType="{x:Type ComboBox}">
|
|
<ContentPresenter Margin="1,1,1,1"
|
|
HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
|
|
VerticalAlignment="{TemplateBinding VerticalContentAlignment}"
|
|
Content="{TemplateBinding SelectionBoxItem}"
|
|
ContentStringFormat="{TemplateBinding SelectionBoxItemStringFormat}"
|
|
ContentTemplate="{TemplateBinding SelectionBoxItemTemplate}"
|
|
ContentTemplateSelector="{TemplateBinding ItemTemplateSelector}"
|
|
IsHitTestVisible="false"
|
|
SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" />
|
|
</ControlTemplate>
|
|
</Setter.Value>
|
|
</Setter>
|
|
</Style>
|
|
|
|
<Style x:Key="{x:Type DataGridColumnHeader}" TargetType="{x:Type DataGridColumnHeader}">
|
|
<Setter Property="VerticalContentAlignment" Value="Center" />
|
|
<Setter Property="Template">
|
|
<Setter.Value>
|
|
<ControlTemplate TargetType="{x:Type DataGridColumnHeader}">
|
|
<Grid>
|
|
<Thumb x:Name="PART_LeftHeaderGripper"
|
|
HorizontalAlignment="Left"
|
|
Style="{StaticResource á}" />
|
|
<Thumb x:Name="PART_RightHeaderGripper"
|
|
HorizontalAlignment="Right"
|
|
Style="{StaticResource á}" />
|
|
</Grid>
|
|
</ControlTemplate>
|
|
</Setter.Value>
|
|
</Setter>
|
|
</Style>
|
|
|
|
<Style x:Key="{x:Type DataGridRowHeader}" TargetType="{x:Type DataGridRowHeader}">
|
|
<Setter Property="Template">
|
|
<Setter.Value>
|
|
<ControlTemplate TargetType="{x:Type DataGridRowHeader}">
|
|
<Grid>
|
|
<Thumb x:Name="PART_TopHeaderGripper"
|
|
VerticalAlignment="Top"
|
|
Style="{StaticResource â}" />
|
|
<Thumb x:Name="PART_BottomHeaderGripper"
|
|
VerticalAlignment="Bottom"
|
|
Style="{StaticResource â}" />
|
|
</Grid>
|
|
</ControlTemplate>
|
|
</Setter.Value>
|
|
</Setter>
|
|
</Style>
|
|
|
|
</ResourceDictionary> |