.NET WinForm控件DataGridView编程技巧详解

需积分: 10 6 下载量 90 浏览量 更新于2024-07-28 收藏 250KB PDF 举报
"DataGridView编程36计" 是一系列关于在.NET 2.0的WinForm应用中使用DataGridView控件的技巧和方法的总结。这个系列涵盖了多个方面,包括但不限于获取和修改当前单元格的内容、设定单元格只读、隐藏新行、判断新增行、自定义用户删除操作、隐藏或删除行和列、禁止列或行的大小调整、自动调整列宽和行高、冻结列或行、列顺序的调整、行头列头的单元格处理、剪切板操作、设置Tooltip、配置右键菜单、设定单元格边框和网格线样式、控制单元格的显示值、用户输入时的值设定以及设置新添加行的默认值。 1. 获取或修改当前单元格内容:通过`DataGridView`对象的`CurrentCell`属性可以获取焦点所在的单元格。如果当前单元格不存在,`CurrentCell`将返回`Nothing`(C#中的`null`)。可以使用`Value`属性获取内容,`ColumnIndex`获取列索引,`RowIndex`获取行索引。 2. 设定单元格只读:通过设置`DataGridViewColumn.ReadOnly`属性为`True`,可以将特定列设为只读,防止用户编辑。 3. 不显示最下面的新行:可以通过设置`DataGridView.AllowUserToAddRows`属性为`False`,阻止显示新增行。 4. 判断新增行:新添加的行的`RowState`属性通常为`Added`,可以通过检查这个属性来识别新行。 5. 行的用户删除操作自定义:可以处理`CellContentClick`事件,当用户点击删除按钮时进行自定义操作。 6. 行、列的隐藏和删除:通过`DataGridView.Columns.RemoveAt()`或`DataGridView.Rows.RemoveAt()`方法删除指定的列或行;设置`Visible`属性为`False`可隐藏。 7. 禁止列或行的Resize:设置`DataGridView.ColumnHeaders ResizeMode`和`DataGridView.RowHeaders ResizeMode`属性,禁止用户调整列宽和行高。 8. 自动调整列宽和行高:设置`DataGridView.AutoSizeColumnsMode`和`DataGridView.AutoSizeRowsMode`属性,可以实现自动调整。 9. 冻结列或行:使用`DataGridView.Splits`属性创建分隔符,可以冻结指定的列或行。 10. 列顺序的调整:可以使用`DataGridView.Columns.Move()`方法来改变列的位置。 11. 行头列头的单元格:`DataGridView`控件的顶部行和左侧列即为行头和列头,可以对这些单元格进行特别的样式设置。 12. 剪切板操作:通过`DataGridView.ClipboardCopyMode`属性和`DataObject.SetData()`方法,可以实现数据的复制和粘贴功能。 13. 单元格的Tooltip设置:通过`DataGridViewCell.ToolTipText`属性设置单元格的提示信息。 14. 右键菜单设置:为`DataGridView`控件添加`ContextMenuStrip`,并绑定相应的事件,可以实现右键菜单功能。 15. 单元格的边框和网格线样式设定:通过`DataGridView.CellBorderStyle`、`DataGridView.ColumnHeadersBorderStyle`等属性设置不同部分的边框样式,`DataGridView.GridColor`设置网格线颜色。 16. 单元格表示值的设定:可以使用`DefaultCellStyle`属性,自定义单元格的显示样式,包括字体、颜色、对齐方式等。 17. 用户输入时,单元格输入值的设定:通过处理`EditingControlShowing`事件,可以控制用户输入时的值格式。 18. 设定新添行的默认值:在添加新行时,可以通过`NewRow`方法获取新行,并设置其各列的默认值。 以上就是`DataGridView`编程36计中涉及的部分内容,这些技巧和方法可以帮助开发者更高效地管理和定制WinForm应用中的数据展示。