一旦光标进入,就改变gridview的单元格值

时间:2014-06-15 10:28:59

标签: c#

我有一个网格视图。我想在用户编辑特定单元格时,它的内容将被更改。 例如,如果内容为" A92-5",则更改为" A92"。 现在它可以工作,但在离开单元格之后。  我希望它在光标进入单元格时发生。

private void _dvg_EditingControlShowing(object sender, DataGridViewEditingControlShowingEventArgs e)
{
    if (_dvg.CurrentCell.ColumnIndex == 2)
    {
        temp = _dvg.Rows[_dvg.CurrentCell.RowIndex].Cells[_dvg.CurrentCell.ColumnIndex].Value.ToString();
        words = temp.Split('-');

        _dvg.Rows[_dvg.CurrentCell.RowIndex].Cells[_dvg.CurrentCell.ColumnIndex].Value = words[0];
    }
}

1 个答案:

答案 0 :(得分:0)

您可以使用事件CellEnter代替

private void _dvg_CellEnter(object sender, DataGridViewCellEventArgs e)
{
    if (_dvg.CurrentCell.ColumnIndex == 2)
    {
        temp = _dvg.Rows[_dvg.CurrentCell.RowIndex].Cells[_dvg.CurrentCell.ColumnIndex].Value.ToString();
        words = temp.Split('-');

        _dvg.Rows[_dvg.CurrentCell.RowIndex].Cells[_dvg.CurrentCell.ColumnIndex].Value = words[0];
    }
}

这将更改单元格获得焦点时的值(可以通过鼠标单击或箭头键)