Как предотвратить сбой, если значение в ячейке DataGridView равно NaN, или ограничить пользователя, пока в ячейке не появится значение? - PullRequest
1 голос
/ 10 мая 2019

У меня есть 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);

                    }

                }
            }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...