У меня есть DataGridview, в котором в первом столбце пользователь вводит значение, а во втором столбце вычисляется ответ, оба затем выводятся на график.
В настоящее время значения во втором столбце вычисляются после нажатия «кнопки вычисления».
Однако если пользователь нажимает кнопку до того, как он введет какие-либо значения в первые ячейки первого столбца, вычисленные значения в ячейках второго столбца отображаются как «NaN», и приложение завершает работу, когдазапускается приведенный ниже код или при удалении приведенного ниже кода происходит сбой при нажатии кнопки «Создать диаграмму»?
Я новичок в C # и программировании в целом, поэтому я не уверен, как предотвратить это, возможно, каким-то образом с помощью проверки.
Это то, что я сейчас пробовал (код ниже), однако я получаю «System.ArgumentOutOfRangeException:« Индекс был вне диапазона ».
foreach (DataGridViewRow rw in this.dataGridView3.Rows)
{
for (int G = 0; G < rw.Cells.Count; G++)
{
if (rw.Cells[G].Value == null || rw.Cells[G].Value == DBNull.Value || String.IsNullOrWhiteSpace(rw.Cells[G].Value.ToString()) || double.IsNaN(Convert.ToDouble(dataGridView1.Rows[G].Cells[1].Value)))
{
MessageBox.Show("Please compute Vulnerabiltiy Curve Points!");
}
else
{
chart1.Series["V-curve"].Points.AddXY(dataGridView3.Rows[G].Cells[1].Value, dataGridView3.Rows[G].Cells[0].Value);
}
}
}