我们不多哔哔先上图:

数据表格使用背景:

  当我们在做二次开发发现我我们的表格无法向WEB的表格一样好看,这时我们就需要对数据表格进行美化和重构

表格美化思维引导:

  WPF数据表格是由表头和表体(内容)组成那么我们就要对这两部分单独美化

  表头美化代码:

 <Style x:Key="DataGridStyle" TargetType="DataGrid">
<Setter Property="ColumnHeaderStyle" Value="{DynamicResource ColumnHeaderStyle}"></Setter>
<Setter Property="CellStyle" Value="{DynamicResource CellStyle}"></Setter>
<Setter Property="RowStyle" Value="{DynamicResource RowStyle}"></Setter>
<Setter Property="Background" Value="White"></Setter>
<Setter Property="EnableRowVirtualization" Value="False"></Setter>
<Setter Property="GridLinesVisibility" Value="None"></Setter>
<Setter Property="CanUserAddRows" Value="False"></Setter><!--禁止在尾行手动添加数据-->
<Setter Property="AutoGenerateColumns" Value="False"></Setter>
<Setter Property="IsEnabled" Value="True"></Setter>
</Style>
<Style x:Key="ColumnHeaderStyle" TargetType="DataGridColumnHeader">
<Setter Property="Height" Value=""></Setter>
<Setter Property="Background" Value="#F2F2F2"></Setter>
<Setter Property="BorderThickness" Value=""></Setter>
<Setter Property="BorderBrush" Value="#CBCBCB"></Setter>
<Setter Property="VerticalContentAlignment" Value="Center"></Setter><!--水平居中-->
<Setter Property="HorizontalContentAlignment" Value="Center"></Setter><!--垂直居中-->
 </Style>

美化表体每行样式

 <Style x:Key="RowStyle" TargetType="DataGridRow">
<Setter Property="Cursor" Value="Hand"></Setter>
<Style.Triggers>
<Trigger Property="IsMouseOver" Value="true">
<Setter Property="Background" Value="#F2F2F2"/>
</Trigger>
<Trigger Property="IsSelected" Value="True">
<Setter Property="Background" Value="#CBCBCB" />
</Trigger>
</Style.Triggers>
</Style>

美化表体单元格内容样式

 <Style x:Key="CellStyle" TargetType="DataGridCell">
<Setter Property="Height" Value=""></Setter>
<Setter Property="FontSize" Value=""></Setter>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="DataGridCell">
<Border x:Name="Bg" Background="Transparent" BorderThickness="" UseLayoutRounding="True" BorderBrush="#FFCBCBCB">
<ContentPresenter HorizontalAlignment="Center" VerticalAlignment="Center" />
</Border>
</ControlTemplate> </Setter.Value>
</Setter>
<Style.Triggers>
<Trigger Property="IsSelected" Value="True">
<Setter Property="Background" Value="#CBCBCB" />
<Setter Property="Foreground" Value="#000000" />
</Trigger>
</Style.Triggers>
</Style>

注意:鼠标点击当前行时需要覆盖单元格颜色

最新文章

  1. 第一次react-native项目实践要点总结
  2. 关于SQL递归查询在不同数据库中的实现方法
  3. pthread_exit
  4. JQuery为元素添加样式
  5. mongodb.conf
  6. X11 五子棋
  7. Xcode6无法用xib得问题解决方法
  8. mysql5.7初始化密码报错 ERROR 1820 (HY000): You must reset your password using ALTER USER statement before
  9. git 入门教程之备忘录[译]
  10. laravel 资源控制器
  11. java.lang.ClassNotFoundException: org.hibernate.engine.FilterDefinition的解决方案
  12. [重要] Django 多条件多表查询实例问题
  13. 从源码角度一步一步来修改PreferenceActivity界面
  14. sgd学习率选择问题
  15. C#使用 RNGCryptoServiceProvider 生成强随机字符串
  16. vsftpd for Anonymous Downloads on Ubuntu 16.04
  17. JQuery - 特殊字符转义(Uncaught Error: Syntax error, unrecognized expression:的处理)
  18. FineReport----报表模板入门教程1
  19. Ubantu下安装adobe flash player插件
  20. 博客移至CSDN

热门文章

  1. Codeforces Round Edu 36
  2. Java面试题,深入理解final关键字
  3. 2018.11.5 PION模拟赛
  4. Java中的重写
  5. 【scrapy】Item Pipeline
  6. &amp;quot;undefined reference to strptime&amp;quot;之自己定义strptime函数
  7. OpenCV---在图片上加入文字
  8. poj1161Post Office【经典dp】
  9. 修正iOS从照相机和相册中获取的图片 方向
  10. 硬件开发之bt输出---BT656/BT601/BT1120协议以及DM365/DM355/DM6467上使用的YUV颜色空间说明