• 数据绑定

    • 直接指定源数据(List<T>):this.DataSource = data;
    • 通常也可以直接指定DataTable类型的数据
      •  DataTable dt = new DataTable();
        DataColumn dc1 = new DataColumn(_column1Name, Type.GetType("System.String"));
        dt.Columns.Add(dc1);
        foreach (string searchText in VisualXmlApp.Instance.searchHistoryGridView.Take())
        {
        DataRow dr = dt.NewRow();
        dr[_column1Name] = searchText;
        dt.Rows.Add(dr);
        }
        this.dgvDataSourceSearchHistory.DataSource = dt;
    • 自定义列
      • 取消自动生成列:this.AutoGenerateColumns = false;
      • 自定义列数、列名、列宽权重、列填充
        •              this.Columns.Clear();
          this.ColumnCount = ;
          this.Columns[].Name = "Column 1";
          this.Columns[].DataPropertyName = "VarName";
          this.Columns[].FillWeight = ;
          this.Columns[].Name = "Column 2";
          this.Columns[].DataPropertyName = "VarPath";
          this.Columns[].FillWeight = ;
          this.Columns[].Name = "Column 2";
          this.Columns[].FillWeight = ;
  • 样式
    • 整体背景色(当窗口变大时,空白处的颜色)

      • this.BackgroundColor = DataSourceUIParams.WindowBackColor;
    • 边框
      • 风格

        • DataGridView.BorderStyle
          • BorderStyle 枚举: FixedSingle(单线,默认)、Fixed3D、None
      • 颜色(所有边框,含普通数据行和头部)
        • this.GridColor = Color.FromArgb(173, 190, 203);
        • 如果要头部生效,别忘了取消系统风格影响:this.EnableHeadersVisualStyles=false;
        • 默认是 ControlDarkDark 。但是只有在 CellBorderStyle 被设定为 Single、SingleHorizontal、SingleVertical  的条件下才能改变其边框线的颜色。
      • 如果是自定义了一个控件继承自DataGridView,那么即使在这个控件中设置了不显示边框,在父控件中仍然需要再设置一次其BorderStyle = BorderStyle.None;
      • 其他可参考(如颜色、四个方位边框的单独设置):https://blog.csdn.net/yunhaic/article/details/7176015
    • 头部
      • 取消使用系统风格:this.EnableHeadersVisualStyles = false;
      • 行头
        • 取消显示行头

          • this.RowHeadersVisible = false;
        • 边框
          • 风格

            • 直接设置RowHeadersBorderStyle,默认是DataGridViewHeaderBorderStyle.Raised,可改为Single、None等。属性设定值是DataGridViewHeaderBorderStyle枚举的值
      • 列头
        • 取消显示列头

          • this.ColumnHeadersVisible = false;
        • 高度
          • 先把ColumnHeadersHeightSizeMode从默认的AutoSize设置为EnableResizing
          • 再用ColumnHeadersHeight直接设置高度
          • 注:代码构造函数中直接设置这两个属性也可以
          • 注:将DataGridView设置固定高度,并自动显示滚动条时,如果Header高度是AutoSize的,可能会使最后一行显示不全
        • 字体
        • 边框
          • 风格

            • 直接设置ColumnHeadersBorderStyle,默认是DataGridViewHeaderBorderStyle.Raised,可改为Single、None等。属性设定值是DataGridViewHeaderBorderStyle枚举的值
            • 同样,ColumnHeadersBorderStyle只能设定单元格全部边框线的式样。要单独改变单元格某一边边框式样的话,需要用到设定行头单元格的属性是: RowHeadersBorderStyle, 设定列头单元格属性是:ColumnHeadersBorderStyle
    • 数据行
      • 高度

        • this.RowTemplate.Height = 30;
      • 奇偶行
        • 背景色

          • this.AlternatingRowsDefaultCellStyle.BackColor = Color.FromArgb(223, 230, 237);
          • this.RowsDefaultCellStyle.BackColor = Color.White;
      • 边框
        • 风格

          • 直接设置CellBorderStyle,默认为BorderStyle.FixedSingle,但这个时候底边框有可能消失,可以考虑改为BorderStyle.Fixed3D
          • CellBorderStyle只能设定单元格全部边框线的式样。要单独改变单元格某一边边框式样的话,需要用到DataGridView.AdvancedCellBorderStyle属性。
  • 是否可编辑、新增、删除
    • this.ReadOnly = true;
    • this.AllowUserToAddRows = false;
    • this.AllowUserToDeleteRows = false;
  • 是否可调整列宽、行宽
    • this.AllowUserToResizeColumns = false;
      this.AllowUserToResizeRows = false;
  • 是否可选中及选中模式
    • 是否可多选:this.MultiSelect = false;
    • 设置选中模式
      • 直接设置SelectionMode属性,包括DataGridViewSelectionMode.FullRowSelect等选项
    • 取消首行或首个单元格的默认选中
      • 在DataGridView的RowsPrePaint事件处理函数中

        •          private void RowsPrePaintHandler(object sender, DataGridViewRowPrePaintEventArgs e)
          {
          int index = e.RowIndex; // cancel default selected first row
          if (index == )
          {
          this.Rows[index].Selected = false;
          }
          }

最新文章

  1. iOS关于模块化开发解决方案(纯干货)
  2. 关于LESS
  3. Guava学习笔记(一)概览
  4. Android编译环境折腾记
  5. [BZOJ1143][CTSC2008]祭祀river(最长反链)
  6. 【wikioi】1904 最小路径覆盖问题(最大流+坑人的题+最小路径覆盖)
  7. MongoDB ObjectId
  8. inpuy type=date
  9. Cocos2DX新手入门笔记索引
  10. 设计模式——(Abstract Factory)抽象工厂
  11. C#网络程序设计(2)Socket基础编程
  12. python基础(五)列表,元组,集合
  13. Minimum Inversion Number~hdu 1394
  14. java解压缩zip
  15. 史上最简单的SpringCloud教程 | 第六篇: 分布式配置中心(Spring Cloud Config)
  16. Codeforces 844F Anti-Palindromize 最小费用流
  17. 针对Web应用的【攻击模式篇】
  18. python爬虫简单代码爬取郭德纲单口相声
  19. engineercms支持文档协作和文档流程,基于flow
  20. 学习笔记&lt;4&gt;初步控件布局

热门文章

  1. Mysql遇到的坑
  2. JavaScript学习笔记:基础知识点总结
  3. python之常用字符串用法
  4. 关于syslog日志功能详解 事件日志分析、EventLog Analyzer
  5. Windows AD域管理软件是什么?
  6. 使用Spring 简化MyBatis
  7. poj-3667(线段树区间合并)
  8. Echarts饼图显示模板
  9. tomat修改启动路径
  10. Le Chapitre V