WinForm笔记1:TextBox编辑时和DataGridView 单元格编辑时 的事件及其顺序

TextBox 编辑框

 

When you change the focus by using the mouse or by calling the Focus method, focus events occur in the following order:

Enter

GotFocus

LostFocus

Leave

Validating

Validated
---------------------

 

Cell单元格

第一种顺序,即不进行Cell编辑的情况下:

CellEnter-发生于 DataGridView 单元格的焦点获取的时候,或是单元格收到输入焦点的时候。

CellLeave-发生于单元格失去输入焦点时,而且现在是当前的单元格。

CellValidating-发生于单元格失去输入焦点时,同时触发数据验证,进行数据验证。

CellValidated –发生于单元格完成数据验证之后。

 

第二种对单元格进行编辑之后的事件顺序

CellEnter-发生于 DataGridView 单元格的焦点获取的时候,或是单元格收到输入焦点的时候。

CellBeginEdit –发生于选中的单元格进入编辑模式的时候。

CellLeave-发生于单元格失去输入焦点时,而且现在是当前的单元格。

CellValidating-发生于单元格失去输入焦点时,同时触发数据验证,进行数据验证。

CellValueChanged-发生于单元格中的值发生变更时。

CellValidated -发生于单元格完成数据验证之后。

CellEndEdit-发生于当前所选中的单元格退出编辑模式时。

应用

利用CellValidating事件 来验证输入数据,不合法就取消编辑。

 

private void dataGridView1_CellValidating(object sender, DataGridViewCellValidatingEventArgs e)
{
    //可编辑的列
    if (e.ColumnIndex != 2 && e.ColumnIndex != 3)
        return;
    double outDb = 0;
    if (double.TryParse(e.FormattedValue.ToString(), out outDb))
    {
        e.Cancel = false;
    }
    else
    {
        e.Cancel = true;//数据格式不正确则还原
        dataGridView1.CancelEdit();
    }
}

 

转载于:https://www.cnblogs.com/noigel/p/10931433.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值