У меня есть сетка, которая показывает список продуктов со следующими столбцами:
ProductId,ProductName,MRP,FinalAmount
Теперь я оставил ППМ доступным для редактирования, чтобы пользователь мог изменить его на основе скидки на некоторые продукты. Я сохранил проверку в столбце ППМ, чтобы пользователь не мог ввести null value
, но проблема заключается в том, что я поднял сообщение проверки исходное значение ППМ - LOST .
Так что я пытаюсь сделать, когда пользователь вводит отрицательное / нулевое значение, тогда я хочу показать сообщение и сохранить последнее значение ППМ.
Код:
private void grdProductList_CellEndEdit_1(object sender, DataGridViewCellEventArgs e)
{
if (grdProductList.CurrentCell == null ||
grdProductList.CurrentCell.Value == null ||
e.RowIndex == -1) return;
if (grdProductList.CurrentCell.ColumnIndex.Equals(3))//MRP
{
if(string.IsNullOrEmpty(grdProductList.Rows[grdProductList.CurrentRow.Index].Cells["MRP"].Value.ToString()))
{
MessageBox.Show("MRP cannot be empty.Please provide value", "Error");
return;
}
decimal.TryParse(grdProductList.Rows[grdProductList.CurrentRow.Index].Cells["MRP"].Value.ToString(), out decimal mrp);
if(mrp < 0)
{
MessageBox.Show("MRP cannot have negative value", "Error");
return;
}
grdProductList.Rows[grdProductList.CurrentRow.Index].Cells["FinalAmount"].Value = mrp;
//calculation code based on mrp
}
}