Try this in DataGridView CurrentCellDirtyStateChanged Event
private void DGViewIn_CurrentCellDirtyStateChanged(object sender, EventArgs e)
{
if (DGViewIn.IsCurrentCellDirty == true)
{
DGView.CurrentRow.Cells[3].Value=int.Parse(DGView.CurrentRow.Cells[1].Value.ToString())*int.Parse(DGView.CurrentRow.Cells[2].Value.ToString());
DGView.CommitEdit(DataGridViewDataErrorContexts.Commit);
}
}