首页 > 代码库 > WPF自定义样式篇-DataGrid
WPF自定义样式篇-DataGrid
样式:
<!--DataGrid样式-->
<Style TargetType="DataGrid">
<Setter Property="RowHeaderWidth" Value="http://www.mamicode.com/0"></Setter>
<Setter Property="AutoGenerateColumns" Value="http://www.mamicode.com/False"></Setter>
<Setter Property="CanUserAddRows" Value="http://www.mamicode.com/False"></Setter>
<Setter Property="CanUserResizeColumns" Value="http://www.mamicode.com/False"></Setter>
<Setter Property="CanUserResizeRows" Value="http://www.mamicode.com/False"></Setter>
<Setter Property="HorizontalGridLinesBrush" Value="http://www.mamicode.com/LightGray"></Setter>
<Setter Property="VerticalGridLinesBrush" Value="http://www.mamicode.com/LightGray"></Setter>
<Setter Property="IsReadOnly" Value="http://www.mamicode.com/True"></Setter>
<Setter Property="BorderThickness" Value="http://www.mamicode.com/1,0"></Setter>
<Setter Property="BorderBrush" Value="http://www.mamicode.com/LightGray"></Setter>
<Setter Property="RowHeight" Value="http://www.mamicode.com/30"></Setter>
<Setter Property="VerticalScrollBarVisibility" Value="http://www.mamicode.com/Auto"></Setter>
</Style>
<Style TargetType="DataGrid">
<Setter Property="RowHeaderWidth" Value="http://www.mamicode.com/0"></Setter>
<Setter Property="AutoGenerateColumns" Value="http://www.mamicode.com/False"></Setter>
<Setter Property="CanUserAddRows" Value="http://www.mamicode.com/False"></Setter>
<Setter Property="CanUserResizeColumns" Value="http://www.mamicode.com/False"></Setter>
<Setter Property="CanUserResizeRows" Value="http://www.mamicode.com/False"></Setter>
<Setter Property="HorizontalGridLinesBrush" Value="http://www.mamicode.com/LightGray"></Setter>
<Setter Property="VerticalGridLinesBrush" Value="http://www.mamicode.com/LightGray"></Setter>
<Setter Property="IsReadOnly" Value="http://www.mamicode.com/True"></Setter>
<Setter Property="BorderThickness" Value="http://www.mamicode.com/1,0"></Setter>
<Setter Property="BorderBrush" Value="http://www.mamicode.com/LightGray"></Setter>
<Setter Property="RowHeight" Value="http://www.mamicode.com/30"></Setter>
<Setter Property="VerticalScrollBarVisibility" Value="http://www.mamicode.com/Auto"></Setter>
</Style>
<!--DataGrid表头样式-->
<Style TargetType="DataGridColumnHeader">
<Setter Property="FontSize" Value="http://www.mamicode.com/16"></Setter>
<Setter Property="Background" Value="http://www.mamicode.com/{StaticResource BgColor}"></Setter>
<Setter Property="BorderThickness" Value="http://www.mamicode.com/0,0,1,1"></Setter>
<Setter Property="BorderBrush" Value="http://www.mamicode.com/LightGray"></Setter>
<Setter Property="HorizontalContentAlignment" Value="http://www.mamicode.com/Center"></Setter>
</Style>
<Style TargetType="DataGridColumnHeader">
<Setter Property="FontSize" Value="http://www.mamicode.com/16"></Setter>
<Setter Property="Background" Value="http://www.mamicode.com/{StaticResource BgColor}"></Setter>
<Setter Property="BorderThickness" Value="http://www.mamicode.com/0,0,1,1"></Setter>
<Setter Property="BorderBrush" Value="http://www.mamicode.com/LightGray"></Setter>
<Setter Property="HorizontalContentAlignment" Value="http://www.mamicode.com/Center"></Setter>
</Style>
<!--DataGrid复选框样式-->
<Style TargetType="CheckBox" x:Key="VerticalCheckBox">
<Setter Property="VerticalAlignment" Value="http://www.mamicode.com/Center"></Setter>
<Setter Property="FontSize" Value="http://www.mamicode.com/16"></Setter>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type CheckBox}">
<StackPanel Name="sp" HorizontalAlignment="Center" >
<ContentPresenter HorizontalAlignment="Center" Margin="2"></ContentPresenter>
<Border x:Name="bd" BorderThickness="1.5" Height="20" Width="20" BorderBrush="Gray" >
<Border.Background>
<LinearGradientBrush StartPoint="0,0" EndPoint="1,1">
<GradientStop Color="LightGray" Offset="0.05"/>
<GradientStop Color="White" Offset="1"/>
</LinearGradientBrush>
</Border.Background>
<Path Name="checkPath" Width="18" Height="16" Stroke="Black" StrokeThickness="2"></Path>
</Border>
</StackPanel>
<ControlTemplate.Triggers>
<Trigger Property="IsChecked" Value="http://www.mamicode.com/True">
<Setter TargetName="checkPath" Property="Data" Value="http://www.mamicode.com/M 1.5,5 L 7,13 17,0"></Setter>
<Setter Property="VerticalAlignment" Value="http://www.mamicode.com/Center"></Setter>
<Setter Property="FontSize" Value="http://www.mamicode.com/16"></Setter>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type CheckBox}">
<StackPanel Name="sp" HorizontalAlignment="Center" >
<ContentPresenter HorizontalAlignment="Center" Margin="2"></ContentPresenter>
<Border x:Name="bd" BorderThickness="1.5" Height="20" Width="20" BorderBrush="Gray" >
<Border.Background>
<LinearGradientBrush StartPoint="0,0" EndPoint="1,1">
<GradientStop Color="LightGray" Offset="0.05"/>
<GradientStop Color="White" Offset="1"/>
</LinearGradientBrush>
</Border.Background>
<Path Name="checkPath" Width="18" Height="16" Stroke="Black" StrokeThickness="2"></Path>
</Border>
</StackPanel>
<ControlTemplate.Triggers>
<Trigger Property="IsChecked" Value="http://www.mamicode.com/True">
<Setter TargetName="checkPath" Property="Data" Value="http://www.mamicode.com/M 1.5,5 L 7,13 17,0"></Setter>
</Trigger>
<Trigger Property="IsMouseOver" Value="http://www.mamicode.com/True">
<Setter TargetName="bd" Property="Background" Value="http://www.mamicode.com/LightGray"></Setter>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Trigger Property="IsMouseOver" Value="http://www.mamicode.com/True">
<Setter TargetName="bd" Property="Background" Value="http://www.mamicode.com/LightGray"></Setter>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<!--DataGrid单元格选中样式-->
<Style TargetType="DataGridCell">
<Style.Triggers>
<Trigger Property="IsSelected" Value="http://www.mamicode.com/True">
<Setter Property="Background" Value="http://www.mamicode.com/#FFC7CBCA"/>
<Setter Property="BorderThickness" Value="http://www.mamicode.com/0"></Setter>
</Trigger>
</Style.Triggers>
</Style>
<Style TargetType="DataGridCell">
<Style.Triggers>
<Trigger Property="IsSelected" Value="http://www.mamicode.com/True">
<Setter Property="Background" Value="http://www.mamicode.com/#FFC7CBCA"/>
<Setter Property="BorderThickness" Value="http://www.mamicode.com/0"></Setter>
</Trigger>
</Style.Triggers>
</Style>
<!--DataGrid按钮样式 蓝-->
<Style x:Key="btnInfo" TargetType="Button">
<Setter Property="Width" Value="http://www.mamicode.com/70"></Setter>
<Setter Property="Foreground" Value="http://www.mamicode.com/White"></Setter>
<Setter Property="FontSize" Value="http://www.mamicode.com/12"></Setter>
<Setter Property="Margin" Value="http://www.mamicode.com/0,2"></Setter>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="Button">
<Border Name="bd" CornerRadius="3" BorderThickness="1" BorderBrush="LightGray" Background="#FF2F6DC1">
<ContentPresenter Content="{TemplateBinding ContentControl.Content}" HorizontalAlignment="Center" VerticalAlignment="Center" />
</Border>
<ControlTemplate.Triggers>
<Trigger Property="Button.IsMouseOver" Value="http://www.mamicode.com/True">
<Setter TargetName="bd" Property="Opacity" Value="http://www.mamicode.com/0.6"></Setter>
</Trigger>
<Trigger Property="IsPressed" Value="http://www.mamicode.com/True">
<Setter TargetName="bd" Property="Background" Value="http://www.mamicode.com/#FF9BCEF7"></Setter>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Style x:Key="btnInfo" TargetType="Button">
<Setter Property="Width" Value="http://www.mamicode.com/70"></Setter>
<Setter Property="Foreground" Value="http://www.mamicode.com/White"></Setter>
<Setter Property="FontSize" Value="http://www.mamicode.com/12"></Setter>
<Setter Property="Margin" Value="http://www.mamicode.com/0,2"></Setter>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="Button">
<Border Name="bd" CornerRadius="3" BorderThickness="1" BorderBrush="LightGray" Background="#FF2F6DC1">
<ContentPresenter Content="{TemplateBinding ContentControl.Content}" HorizontalAlignment="Center" VerticalAlignment="Center" />
</Border>
<ControlTemplate.Triggers>
<Trigger Property="Button.IsMouseOver" Value="http://www.mamicode.com/True">
<Setter TargetName="bd" Property="Opacity" Value="http://www.mamicode.com/0.6"></Setter>
</Trigger>
<Trigger Property="IsPressed" Value="http://www.mamicode.com/True">
<Setter TargetName="bd" Property="Background" Value="http://www.mamicode.com/#FF9BCEF7"></Setter>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
转自:http://www.cnblogs.com/DemonJ/p/6283477.html
WPF自定义样式篇-DataGrid
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。