博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
DataGridView中内置控件常用事件使用心得
阅读量:5008 次
发布时间:2019-06-12

本文共 3646 字,大约阅读时间需要 12 分钟。

checkbox,button,imagebutton使用dataGridView1_CellContentClick

private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)        {            tb.Text+=string.Format("\r\n{0},Row:{1},Column:{2}","单元格内容单击!",e.RowIndex,e.ColumnIndex);        }

combobox使用EditingControlShowing+DropDownClosed,此二事件结合使用可以做到内置combobox一下拉选择了就触发事件

private void dataGridView1_EditingControlShowing(object sender, DataGridViewEditingControlShowingEventArgs e)        {            tb.Text += string.Format("\r\n{0},控件名:{1}", "单元格控件编辑!", e.Control.GetType());            if (e.Control.GetType().Equals(typeof(DataGridViewComboBoxEditingControl)))            {                    DataGridViewComboBoxEditingControl editingControl = e.Control as DataGridViewComboBoxEditingControl;                    try                    {                        editingControl.DropDownClosed -= new EventHandler(editingControl_DropDownClosed);                    }                    catch                    {                    }                    editingControl.DropDownClosed += new EventHandler(editingControl_DropDownClosed);            }            else if (e.Control.GetType().Equals(typeof(DataGridViewTextBoxEditingControl)))            {                    DataGridViewTextBoxEditingControl editingControl = e.Control as DataGridViewTextBoxEditingControl;                    try                    {                    }                    catch                    {                    }            }        }        private void editingControl_DropDownClosed(object sender, EventArgs e)        {            DataGridViewComboBoxEditingControl ctl = sender as DataGridViewComboBoxEditingControl;            int r = dataGridView1.CurrentCell.RowIndex;            int c = dataGridView1.CurrentCell.ColumnIndex;            tb.Text += string.Format("\r\n{0},控件名:{1}", "单元格下拉框下拉!", ctl.GetType());            dataGridView1.CellValueChanged -= dataGridView1_CellValueChanged;        }

textbox一般只需要验证事件可使用dgvJointList_CellValidating

private void dgvJointList_CellValidating(object sender, DataGridViewCellValidatingEventArgs e)        {            int r = dgvJointList.CurrentCell.RowIndex;            int c = dgvJointList.CurrentCell.ColumnIndex;            if (dgvJointList.Columns["diameter"].Index == c ||                dgvJointList.Columns["thickness"].Index == c ||                dgvJointList.Columns["weldLength"].Index == c)            {                string txt = dgvJointList.CurrentCell.EditedFormattedValue.ToString();                string errorMsg;                if (!ValidNumericFF(txt, out errorMsg))                {                    e.Cancel = true;                    this.errorProvider1.SetError(dgvJointList, errorMsg);                }                else                {                    this.errorProvider1.SetError(dgvJointList, "");                }            }        }

 

 

单元格内容改变!,Row:-1,Column:0
单元格内容改变!,Row:-1,Column:1
单元格内容改变!,Row:-1,Column:2
单元格内容改变!,Row:-1,Column:3
单元格内容改变!,Row:-1,Column:4
单元格内容改变!,Row:-1,Column:5
单元格内容选择改变!,Row:0,Column:0
单元格控件编辑!,控件名:System.Windows.Forms.DataGridViewTextBoxEditingControl

点击checkboxcell

单元格验证!,Row:0,Column:0

单元格内容选择改变!,Row:0,Column:4
单元格单击!,Row:0,Column:4
单元格内容单击!,Row:0,Column:4

 

点击comboboxcell

单元格验证!,Row:0,Column:4

单元格内容改变!,Row:0,Column:4
单元格控件编辑!,控件名:System.Windows.Forms.DataGridViewComboBoxEditingControl
单元格内容选择改变!,Row:0,Column:3
单元格单击!,Row:0,Column:3

 

点击textboxcell

单元格验证!,Row:0,Column:3

单元格控件编辑!,控件名:System.Windows.Forms.DataGridViewTextBoxEditingControl
单元格内容选择改变!,Row:0,Column:0
单元格单击!,Row:0,Column:0
单元格离开!,Row:0,Column:0

 

 

转载于:https://www.cnblogs.com/swtool/p/3766583.html

你可能感兴趣的文章
EBS 信用检查(二)
查看>>
JZOJ 1781. Number
查看>>
.NET学习杂记
查看>>
高光导航、文字模糊
查看>>
nhibernate3 linq的where操作
查看>>
centos下Elasticsearch数据迁移与备份
查看>>
设置进程和线程的优先级
查看>>
android studio环境下创建menu问题(标题栏显示问题)
查看>>
MVC其实很简单(Django框架)
查看>>
UIScrollView 原理
查看>>
linux在tomcat中指定jdk
查看>>
vue学习(二)Vue常用指令
查看>>
《中国作者英文科学写作中的常见语法问题(一)》
查看>>
如何撰写SCI论文的讨论部分?——经典结构 – 俗称“倒漏斗型。
查看>>
织梦dedeCMS数据库结构字段说明-简略说明
查看>>
Cocoa touch(二):UIApplication
查看>>
【数据结构与算法C】利用两个栈S1S2模拟一个队列,用栈的基本操作实线EnQueue,DeQueue,QueueEmpty ...
查看>>
Python-编码和二进制-运算符
查看>>
BZOJ-3211花神游历各国 并查集+树状数组
查看>>
【BZOJ-3667】Rabin_Miller算法 随机化判素数
查看>>