Mam aplikację formularza systemu Windows, która zawiera dane datgridview. Muszę wymusić sprawdzanie poprawności komórek w komórkach datagridview, aby nie akceptował wartości ujemnych. Znalazłem odpowiedni kod dla niego z biblioteki msdn.Sprawdzania poprawności wartości komórek Datagridview w języku C#
private void dataGridView1_CellValidating(object sender,
DataGridViewCellValidatingEventArgs e)
{
dataGridView1.Rows[e.RowIndex].ErrorText = "";
int newInteger;
// Don't try to validate the 'new row' until finished
// editing since there
// is not any point in validating its initial value.
if (dataGridView1.Rows[e.RowIndex].IsNewRow) { return; }
if (!int.TryParse(e.FormattedValue.ToString(),
out newInteger) || newInteger < 0)
{
e.Cancel = true;
dataGridView1.Rows[e.RowIndex].ErrorText = "the value must be a Positive integer";
}
}
Niestety kod pozwala tylko na wpisanie liczb całkowitych do datagridview. Ponieważ mam nazwę kolumny jako "Nazwa elementu", która ma być wprowadzona jako tekst, problem występuje w kodzie. Generuje komunikat o błędzie, gdy wpisuję nazwę elementu. Reszta sprawdzania poprawności działania działa doskonale! Jak mam edytować kod, aby nie generował tego błędu?
góry dzięki
Mirfath