У меня есть функция для дублирования строки в DataGridView, которая выглядит следующим образом:
private void dgv_CellClick(object sender, DataGridViewCellEventArgs e)
{
DataGridView dgv = sender as DataGridView;
// If button clicked
if (e.ColumnIndex == 0)
{
// Get values what you want to use
var value1 = dgv.Rows[e.RowIndex].Cells[1].Value;
var value2 = dgv.Rows[e.RowIndex].Cells[2].Value;
// Insert a new row behind the click one
dgv.Rows.Insert(e.RowIndex + 1);
// Set the previously stored values
dgv.Rows[e.RowIndex + 1].Cells[1].Value = value1;
dgv.Rows[e.RowIndex + 1].Cells[2].Value = value2;
}
}
Теперь я хотел написать функцию для одной конкретной ячейки, чтобы увеличить +1 на каждый клик.Например: если в ячейке [2] значение равно 1, со следующей добавленной строкой значение должно быть равно 2, 3 и т. Д.Я пытался работать с +, но у меня появляется сообщение об ошибке, что оператор не может быть применен к типу объекта.Поэтому я попытался привести конкретную ячейку к следующему:
var value2 = Convert.ToInt32(dgv.Rows[e.RowIndex].Cells[2].Value);
Но теперь я получаю SystemFormatException: входная строка была в неправильном формате.Есть идеи?
Заранее большое спасибо!