首页 > 其他分享 >DevExpress中使用BandGridView实现复合(多行)表头、设置多行表头背景颜色、表格边框颜色

DevExpress中使用BandGridView实现复合(多行)表头、设置多行表头背景颜色、表格边框颜色

时间:2023-12-22 09:05:06浏览次数:29  
标签:多行 gridView 颜色 表格 Appearance 表头 BackColor

一、实现效果

20211012132412549.gif

二、 实现方法

2.1、创建复合表头

①将创建的GridControl下的GirdView1转化为BandGridView类型;

②创建需要展示的列(指定列的名称【Name】、描述【caption】、数据字段名称【FieldName】)

③绑定列实现复合表头。

注意:如果复合表头有多行,则需要设置新增Band的Row Count,然后设置【Band properties下的AutoFillDown=false】

详细操作如下:

20210917111027481.gif

注意:如果要隐藏表格的设计字段内容,则需要将【Views—>bandedGridView1—>OptionsView】下的【ShowColumnHeadersShowGroupPanel】属性设置为:False

watermark_type_ZHJvaWRzYW5zZmFsbGJhY2s_shadow_50_text_Q1NETiBAeGlhb2NoZW5YSUhVQQ_size_20_color_FFFFFF_t_70_g_se_x_16

2.2、设置多行表头背景颜色、表格边框颜色

  1. /// <summary>
  2. /// 设置表格标题背景颜色
  3. /// </summary>
  4. /// <param name="gridView">BandedGridView组件</param>
  5. /// <param name="startColumnIndex">开始列索引</param>
  6. /// <param name="endColumnIndex">结束列索引</param>
  7. /// <param name="color">背景颜色</param>
  8. public static void SetGridViewHeaderBackColor(BandedGridView gridView,
  9. int startColumnIndex, int endColumnIndex, Color color)
  10. {
  11. if (gridView != null && startColumnIndex >= 0 && endColumnIndex > 0)
  12. {
  13. for (int i = startColumnIndex; i <= endColumnIndex; i++)
  14. {
  15. GridBand curGridBand = gridView.Bands[i];
  16. curGridBand.AppearanceHeader.BackColor = color;
  17. if (curGridBand.Children.View.Bands.Count > 0)
  18. {
  19. foreach (GridBand item in curGridBand.Children)
  20. {
  21. item.AppearanceHeader.BackColor = color;
  22. }
  23. }
  24. }
  25. }
  26. }
  27. /// <summary>
  28. /// 设置表格单元格边框颜色
  29. /// </summary>
  30. /// <param name="gridView">GridView组件</param>
  31. /// <param name="color">需设置的颜色</param>
  32. /// <param name="isSetting">是否设置</param>
  33. public static void SetGridViewBorderLineBackColor(GridView gridView, Color color, bool isSetting = true)
  34. {
  35. //获取表格边框原来的颜色
  36. Color originalColor = gridView.Appearance.VertLine.BackColor;
  37. gridView.BorderStyle = DevExpress.XtraEditors.Controls.BorderStyles.Simple;
  38. if (isSetting)
  39. {
  40. gridView.Appearance.VertLine.BackColor = color;
  41. gridView.Appearance.HorzLine.BackColor = color;
  42. gridView.Appearance.VertLine.Options.UseBackColor = isSetting;
  43. gridView.Appearance.HorzLine.Options.UseBackColor = isSetting;
  44. }
  45. else
  46. {
  47. gridView.Appearance.VertLine.BackColor = originalColor;
  48. gridView.Appearance.HorzLine.BackColor = originalColor;
  49. gridView.Appearance.VertLine.Options.UseBackColor = isSetting;
  50. gridView.Appearance.HorzLine.Options.UseBackColor = isSetting;
  51. }
  52. }

2.3、使用示例

  1. //修改复合表头的背景颜色
  2. SetGridViewHeaderBackColor(bandedGridView1,0,bandedGridView1.Bands.Count-1,Color.FromArgb(0,68,176));
  3. //修改表格单元格边框颜色
  4. SetGridViewBorderLineBackColor(bandedGridView1,Color.Blue,true);

2.4、其他资料

DevExpress中使用BandGridView实现复合(多行)表头和固定列不跟随滑动条移动、导出表格内容为Excel文件

标签:多行,gridView,颜色,表格,Appearance,表头,BackColor
From: https://www.cnblogs.com/xiaoxihebei/p/17920499.html

相关文章

  • 前端导出export2Excel-多级表头
    1,export2Excel.js/*eslint-disable*///import{saveAs}from"file-saver";constsaveAs=require("file-saver");//importXLSXfrom"xlsx";importXLSXfrom"yxg-xlsx-style";importmomentfrom"moment&qu......
  • POI中创建条件格式后使用aspose转换为PDF时,颜色不正常的问题
    场景:使用一个EXCEL模板,其中创建了一些条件格式,通过EASYPOI进行模板填充,使用FE模板指令,复制填充了一些行,同时复制了这些行中存在的条件格式。现象:打开EXCEL,条件格式是正常的,但是随后通过ASPOSECELLS将XLSX转换为PDF,会发现新创建的条件格式的长短、颜色都不正常解决方法一:在EXCE......
  • WPF ListView GridView表头Header修改外观的方式
    <Window.Resources><DataTemplatex:Key="BlueHeader"><StackPanelOrientation="Horizontal"Margin="-5,-5,-5,-5"Width="120"><StackPanel.Background><LinearGradi......
  • JS+CSS多行文本显示“更多”
    本代码展示最多显示3行,每行行高16px,3行总高48px,4行总高64px当文本行数大于3行,显示“更多”CSS:#CourseDesc{margin-top:5px;font-size:12px;position:relative;max-height:48px;line-height:16px;overflow:hidden;}#CourseDesc.temp{position:absolute;top......
  • 改变上传的svg颜色并生成新的svg文件,再上传或者更新至服务器上
    最近有个需求,就是把上传的svg改颜色,并生成新的svg图片上传值服务器上<!DOCTYPEhtml><html><head><title>上传svg并修改颜色得到新的svg文件</title><style>#svgContainer{padding:50px;display:inline-block;}......
  • html颜色代码
    1白色#FFFFFFFF2红色#FFFF00003绿色#FF00FF004蓝色#FF0000FF5牡丹红#FFFF00FF6青色#FF00FFFF7黄色#FFFFFF008黑色#FF0000009海蓝#FF70DB9310巧克力色......
  • C#中使用代码设置颜色
     1、直接点出来,例如 this.BackColor=Color.White;//白色 this.BackColor=Color.Black;//黑色2、使用16进制格式 this.BackColor=Color.FromName("#FFFFFF");//白色  this.BackColor=Color.FromName("#000000");//黑色 this.BackColor=C......
  • 颜色取一半
     hexToRGB(hex){   if(!/(^\#([a-fA-F0-9]{3})$)|(^\#([a-fA-F0-9]{6})$)/g.test(hex))    returnnull;   letallNumberStr="0123456789abcdef";//十六进制的所有数字   letlen=hex.slice(1).length;   letstr=    ......
  • python_控制台输出带颜色的文字方法
    在python开发的过程中,经常会遇到需要打印各种信息。海量的信息堆砌在控制台中,就会导致信息都混在一起,降低了重要信息的可读性。这时候,如果能给重要的信息加上字体颜色,那么就会更加方便用户阅读了。当然了,控制台的展示效果有限,并不能像前段一样炫酷,只能做一些简单的设置......
  • 【python基础】颜色列表和颜色字典以及python画图
    前言 使用:list_keys=[iforiincnames.keys()]list_values=[iforiincnames.values()] 颜色列表示例:colormap=['#7A57D1','#FF731D','#004d61','#bc8420','#CF0A0A','#83FFE6','#0000A1',&#......