158 lines
8.9 KiB
Plaintext
158 lines
8.9 KiB
Plaintext
|
|
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
|||
|
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
|
|||
|
|
|
|||
|
|
<Style TargetType="DataGridCell" x:Key="DataGridCellStyle">
|
|||
|
|
<Setter Property="Template">
|
|||
|
|
<Setter.Value>
|
|||
|
|
<ControlTemplate TargetType="DataGridCell">
|
|||
|
|
<Border Background="Transparent">
|
|||
|
|
<ContentPresenter VerticalAlignment="Center" HorizontalAlignment="Stretch"/>
|
|||
|
|
</Border>
|
|||
|
|
</ControlTemplate>
|
|||
|
|
</Setter.Value>
|
|||
|
|
</Setter>
|
|||
|
|
<Style.Triggers>
|
|||
|
|
<Trigger Property="IsSelected" Value="True">
|
|||
|
|
<Setter Property="Foreground" Value="#444"/>
|
|||
|
|
</Trigger>
|
|||
|
|
<DataTrigger Binding="{Binding State}" Value="0">
|
|||
|
|
<Setter Property="Foreground" Value="red"/>
|
|||
|
|
</DataTrigger>
|
|||
|
|
</Style.Triggers>
|
|||
|
|
</Style>
|
|||
|
|
|
|||
|
|
<Style TargetType="DataGridColumnHeader" x:Key="DataGridColumnHeaderfStyle">
|
|||
|
|
<Setter Property="Background" Value="#A9CFF9"/>
|
|||
|
|
<Setter Property="Height" Value="30"/>
|
|||
|
|
<Setter Property="BorderThickness" Value="0"/>
|
|||
|
|
<Setter Property="Template">
|
|||
|
|
<Setter.Value>
|
|||
|
|
<ControlTemplate TargetType="DataGridColumnHeader">
|
|||
|
|
<Border Background="{TemplateBinding Background}"
|
|||
|
|
BorderBrush="{TemplateBinding BorderBrush}"
|
|||
|
|
BorderThickness="{TemplateBinding BorderThickness}"
|
|||
|
|
CornerRadius="5" Margin="0,1">
|
|||
|
|
<TextBlock Text="{TemplateBinding Content}" VerticalAlignment="Center" HorizontalAlignment="Center"
|
|||
|
|
Foreground="#FFF"/>
|
|||
|
|
</Border>
|
|||
|
|
</ControlTemplate>
|
|||
|
|
</Setter.Value>
|
|||
|
|
</Setter>
|
|||
|
|
</Style>
|
|||
|
|
|
|||
|
|
<Style TargetType="DataGridRow" x:Key="DataGridRowStyle">
|
|||
|
|
<Setter Property="Height" Value="30"/>
|
|||
|
|
<Setter Property="Background" Value="Transparent"/>
|
|||
|
|
<Setter Property="BorderThickness" Value="0"/>
|
|||
|
|
<!--行头样式-->
|
|||
|
|
<Setter Property="HeaderStyle">
|
|||
|
|
<Setter.Value>
|
|||
|
|
<Style TargetType="DataGridRowHeader">
|
|||
|
|
<Setter Property="Width" Value="0"/>
|
|||
|
|
</Style>
|
|||
|
|
</Setter.Value>
|
|||
|
|
</Setter>
|
|||
|
|
|
|||
|
|
|
|||
|
|
<Style.Triggers>
|
|||
|
|
<!--条纹间隔,需要配合DataGrid.AlternationCount属性-->
|
|||
|
|
<Trigger Property="AlternationIndex" Value="1" >
|
|||
|
|
<Setter Property="Background" Value="#44FFFFFF" />
|
|||
|
|
</Trigger>
|
|||
|
|
<Trigger Property="IsMouseOver" Value="True">
|
|||
|
|
<Setter Property="Background" Value="#22FFFFFF"/>
|
|||
|
|
</Trigger>
|
|||
|
|
<Trigger Property="IsSelected" Value="True">
|
|||
|
|
<Setter Property="Background" Value="#33FFFFFF"/>
|
|||
|
|
</Trigger>
|
|||
|
|
<DataTrigger Binding="{Binding State}" Value="0">
|
|||
|
|
<Setter Property="Foreground" Value="Red"/>
|
|||
|
|
</DataTrigger>
|
|||
|
|
</Style.Triggers>
|
|||
|
|
</Style>
|
|||
|
|
|
|||
|
|
<!--DataGrid样式-->
|
|||
|
|
<Style TargetType="{x:Type DataGrid}">
|
|||
|
|
<!--网格线颜色-->
|
|||
|
|
<Setter Property="CanUserResizeColumns" Value="True"/>
|
|||
|
|
<Setter Property="Foreground" Value="#444" />
|
|||
|
|
<Setter Property="Background" Value="Transparent" />
|
|||
|
|
<Setter Property="BorderBrush" Value="Transparent" />
|
|||
|
|
<Setter Property="HorizontalGridLinesBrush" Value="#EEE"/>
|
|||
|
|
<Setter Property="VerticalGridLinesBrush" Value="Transparent"/>
|
|||
|
|
<Setter Property="CanUserAddRows" Value="False"/>
|
|||
|
|
<Setter Property="AutoGenerateColumns" Value="False"/>
|
|||
|
|
<Setter Property="IsReadOnly" Value="True"/>
|
|||
|
|
<Setter Property="CanUserSortColumns" Value="False"/>
|
|||
|
|
<Setter Property="AlternationCount" Value="2"/>
|
|||
|
|
|
|||
|
|
<Setter Property="CellStyle" Value="{StaticResource DataGridCellStyle}"/>
|
|||
|
|
<Setter Property="ColumnHeaderStyle" Value="{StaticResource DataGridColumnHeaderfStyle}"/>
|
|||
|
|
<Setter Property="RowStyle" Value="{StaticResource DataGridRowStyle}"/>
|
|||
|
|
|
|||
|
|
<Setter Property="Template">
|
|||
|
|
<Setter.Value>
|
|||
|
|
<ControlTemplate TargetType="{x:Type DataGrid}">
|
|||
|
|
<Border x:Name="border" SnapsToDevicePixels="True" BorderBrush="{TemplateBinding BorderBrush}"
|
|||
|
|
BorderThickness="{TemplateBinding BorderThickness}" Padding="{TemplateBinding Padding}">
|
|||
|
|
<Border.Background>
|
|||
|
|
<SolidColorBrush Color="{DynamicResource ControlLightColor}" />
|
|||
|
|
</Border.Background>
|
|||
|
|
<ScrollViewer x:Name="DG_ScrollViewer" Focusable="false">
|
|||
|
|
<ScrollViewer.Template>
|
|||
|
|
<ControlTemplate TargetType="{x:Type ScrollViewer}">
|
|||
|
|
<Grid>
|
|||
|
|
<Grid.ColumnDefinitions>
|
|||
|
|
<ColumnDefinition Width="Auto" />
|
|||
|
|
<ColumnDefinition Width="*" />
|
|||
|
|
<ColumnDefinition Width="Auto" />
|
|||
|
|
</Grid.ColumnDefinitions>
|
|||
|
|
<Grid.RowDefinitions>
|
|||
|
|
<RowDefinition Height="Auto" />
|
|||
|
|
<RowDefinition Height="*" />
|
|||
|
|
<RowDefinition Height="Auto" />
|
|||
|
|
</Grid.RowDefinitions>
|
|||
|
|
|
|||
|
|
<DataGridColumnHeadersPresenter x:Name="PART_ColumnHeadersPresenter"
|
|||
|
|
Grid.Column="0" Grid.ColumnSpan="3"
|
|||
|
|
Visibility="{Binding HeadersVisibility,
|
|||
|
|
ConverterParameter={x:Static DataGridHeadersVisibility.Column},
|
|||
|
|
Converter={x:Static DataGrid.HeadersVisibilityConverter},
|
|||
|
|
RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}" />
|
|||
|
|
|
|||
|
|
<ScrollContentPresenter x:Name="PART_ScrollContentPresenter" Grid.ColumnSpan="3"
|
|||
|
|
Grid.Row="1" CanContentScroll="{TemplateBinding CanContentScroll}" />
|
|||
|
|
|
|||
|
|
<ScrollBar x:Name="PART_VerticalScrollBar" Grid.Column="1"
|
|||
|
|
Grid.Row="1" Orientation="Vertical" Width="12"
|
|||
|
|
ViewportSize="{TemplateBinding ViewportHeight}"
|
|||
|
|
Maximum="{TemplateBinding ScrollableHeight}"
|
|||
|
|
Visibility="{TemplateBinding ComputedVerticalScrollBarVisibility}"
|
|||
|
|
Value="{Binding VerticalOffset, Mode=OneWay, RelativeSource={RelativeSource TemplatedParent}}"
|
|||
|
|
HorizontalAlignment="Right"/>
|
|||
|
|
|
|||
|
|
<Grid Grid.Column="1" Grid.Row="2">
|
|||
|
|
<Grid.ColumnDefinitions>
|
|||
|
|
<ColumnDefinition Width="{Binding NonFrozenColumnsViewportHorizontalOffset,
|
|||
|
|
RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}" />
|
|||
|
|
<ColumnDefinition Width="*" />
|
|||
|
|
</Grid.ColumnDefinitions>
|
|||
|
|
|
|||
|
|
<ScrollBar x:Name="PART_HorizontalScrollBar" Grid.Column="1"
|
|||
|
|
Orientation="Horizontal" ViewportSize="{TemplateBinding ViewportWidth}"
|
|||
|
|
Maximum="{TemplateBinding ScrollableWidth}"
|
|||
|
|
Visibility="{TemplateBinding ComputedHorizontalScrollBarVisibility}"
|
|||
|
|
Value="{Binding HorizontalOffset, Mode=OneWay, RelativeSource={RelativeSource TemplatedParent}}"/>
|
|||
|
|
</Grid>
|
|||
|
|
</Grid>
|
|||
|
|
</ControlTemplate>
|
|||
|
|
</ScrollViewer.Template>
|
|||
|
|
<ItemsPresenter SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" />
|
|||
|
|
</ScrollViewer>
|
|||
|
|
</Border>
|
|||
|
|
</ControlTemplate>
|
|||
|
|
</Setter.Value>
|
|||
|
|
</Setter>
|
|||
|
|
</Style>
|
|||
|
|
|
|||
|
|
</ResourceDictionary>
|