C# Winform Datagridview控件使用和详解

DataGridView 是一种以表格形式显示数据的控件,由Rows(行),Columns(列),Cells(单元格)构成。本实例将综合利用DataGridView的属性和事件,展示不同的表格风格数据和操作。包含:

  • 添加Datagridview行,列数据
  • 设置列单元格不同的控件形式(TextBox,Button,ComboBox,CheckBox,Image,Link)
  • 单元格显示多个控件,及控件绑定行,列信息
  • 编辑,删除行数据
  • 复制表格和单元格数据
  • 查询,定位表格数据
  • Datagridview行间隔颜色
  • 单元格有效值判断
  • 自定义Datagridview扩展控件
  • 合并单元格

Datagridview基本属性:

  • DataSource 设置DataGridView 控件的数据源,常用的数据源类型有:DataTable,List集合。
  • Rows: 通过此属性可以访问或操作行集合中的行。
  • Columns: 通过此属性可以访问或操作列集合中的列。
  • Cell: 表示 DataGridView 控件中的一个单元格。
  • Value: 单元格存储的实际数据。
  • Selected: 表示单元格是否被选中。
  • RowIndex: 单元格所在的行索引。
  • ColumnIndex: 单元格所在的列索引。

Datagridview常用属性:

  • AllowUserToAddRows:控制是否显示用于添加新行的空白行。
  • AllowUserToDeleteRows:控制用户是否可以从 DataGridView 中删除行,默认值为 true。用户可以通过选中行并按 Delete 键来删除行。
  • AllowUserToOrderColumns:控制是否允许用户手动调整列的位置。True: 允许用户通过拖动来重新放置列。False: 不允许用户手动调整列的位置。
  • AllowUserToResizeColumns: 是否允许用户调整列宽。
  • AllowUserToResizeRows: 是否允许用户调整行高。
  • AutoSizeColumnsMode: 确定列的自动大小调整模式。
  • AutoSizeRowsMode: 确定行的自动大小调整模式。
  • EditMode: 定义何时可以编辑单元格的内容。
  • GridColor: 网格线的颜色。
  • MultiSelect: 是否允许用户同时选择多个单元格、行或列。
  • SelectionMode: 设置单元格选择模式。
  • ColumnType: 列的类型,例如 DataGridViewTextBoxColumn, DataGridViewCheckBoxColumn 等。
  • DataPropertyName: 绑定到数据源的属性名。
  • HeaderText: 列标题显示的文本。
  • Selected: 行是否被选中。
  • State: 行的状态。
  • OwningColumn: 所属的列。
  • ColumnIndex: 所在列的索引。
  • FormattedValue: 显示格式化后的值。
  • FormattedValueType: 格式化值的类型。
  • ValueType: 单元格值的数据类型。

Datagridview常用事件:

  • CellClick:单元格单击事件,点击单元格触发。
  • CellContentClick:单元格内容单击事件,必须点击到表格内的内容时才能触发事件。
  • CellChanged事件:点击表格内任意部分即可触发事件。
  • CellValueChanged:初始化和内容提交后(失去焦点后)触发事件
  • CurrentCellDirtyStateChanged:内容被修改后,触发事件(立即)
  • CellBeginEdit:单元格编辑前的值
  • CellEndEdit:单元格编辑后的值

参考:

【WinForm详细教程七】WinForm中的DataGridView控件_winform datagridview-CSDN博客

工程代码实例:

https://download.csdn.net/download/lvxingzhe3/89432596

相关推荐
Scout-leaf2 天前
WPF新手村教程(三)—— 路由事件
c#·wpf
用户298698530143 天前
程序员效率工具:Spire.Doc如何助你一键搞定Word表格排版
后端·c#·.net
mudtools4 天前
搭建一套.net下能落地的飞书考勤系统
后端·c#·.net
玩泥巴的4 天前
搭建一套.net下能落地的飞书考勤系统
c#·.net·二次开发·飞书
唐宋元明清21884 天前
.NET 本地Db数据库-技术方案选型
windows·c#
lindexi4 天前
dotnet DirectX 通过可等待交换链降低输入渲染延迟
c#·directx·d2d·direct2d·vortice
qq_454245034 天前
基于组件与行为的树状节点系统
数据结构·c#
bugcome_com4 天前
C# 类的基础与进阶概念详解
c#
雪人不是菜鸡4 天前
简单工厂模式
开发语言·算法·c#
铸人4 天前
大数分解的Shor算法-C#
开发语言·算法·c#