c# datagridview表格控件常用操作
2016-04-11 09:34
423 查看
1) 行右键菜单
2) 行自动编号
3) 单元格取值设值
private void dataGridView1_CellMouseDown(object sender, DataGridViewCellMouseEventArgs e) { if (e.Button == MouseButtons.Right){ if (e.RowIndex >= 0){ //若行已是选中状态就不再进行设置 if (dataGridView1.Rows[e.RowIndex].Selected == false) { dataGridView1.ClearSelection(); dataGridView1.Rows[e.RowIndex].Selected = true; } //只选中一行时设置活动单元格 if (dataGridView1.SelectedRows.Count == 1){ dataGridView1.CurrentCell = dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex]; } if (dataGridView1.CurrentRow != null) { int idx = dataGridView1.CurrentRow.Index; if (idx >= 0) { string isexport = mDataTableCun.Rows[idx]["ISEXPORT"].ToString(); if (isexport == "已导出") { //弹出操作菜单 contextMenuStrip1.Show(MousePosition.X, MousePosition.Y); } } } } } }
2) 行自动编号
private void dataGridView1_RowPostPaint(object sender, DataGridViewRowPostPaintEventArgs e) { Rectangle rectangle = new Rectangle(e.RowBounds.Location.X, e.RowBounds.Location.Y, dataGridView1.RowHeadersWidth - 4, e.RowBounds.Height); TextRenderer.DrawText(e.Graphics, (e.RowIndex + 1).ToString(), dataGridView1.RowHeadersDefaultCellStyle.Font, rectangle, dataGridView1.RowHeadersDefaultCellStyle.ForeColor, TextFormatFlags.VerticalCenter | TextFormatFlags.Right); }
3) 单元格取值设值
private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e) { if (e.ColumnIndex == 2) { dataGridView1.EndEdit(); string ischeck = dataGridView1.Rows[e.RowIndex].Cells["visible"].Value.ToString(); if (ischeck == "0") { dataGridView1.Rows[e.RowIndex].Cells["edit"].Value = "0"; } } }
相关文章推荐
- 使用反射和codeDom实现C#插件开发(4)主程序开发之main函数编写
- C# dateTime类型之subTract用法
- C#实现四则运算器
- C# 图片 位深度处理
- C# log4net使用
- C# 6.0 的新特性
- C#+Win32 API程序控制鼠标的操作 解脱烦重的鼠标繁复操作
- 图解C#利用委托实现窗体传值
- C#学习总结
- 【C#】机房重构版---开工
- C#之数据序列化
- 使用反射和codeDom实现C#插件开发(3)主程序开发之动态类
- C#中属性和字段的区别
- C#多线程写日志
- c#多线程刷新界面
- C# 中传参中的OUT 和 ref 区别 笔记
- C#委托和事件的前世今生
- C#进阶系列——WebApi异常处理解决方案
- C#中定时器timer的使用
- C#中属性与字段的用法