Столбец суммы в DataGridView игнорирует отрицательные числа - PullRequest
0 голосов
/ 15 сентября 2011

Здравствуйте! Мне нужно игнорировать отрицательные числа в сумме столбца DGV. Код, который я использую для добавления значений, выглядит следующим образом:

private double DGVTotal()
    {
        double tot = 0;
        int i = 0;
        for (i = 0; i < dataGridView1.Rows.Count; i++)
        {
            tot = tot + Convert.ToDouble(dataGridView1.Rows[i].Cells["Total"].Value);
        }
        return tot;
    }

Как бы я изменил это так, если значение строки является отрицательным числом, чтобы оно не было включено в сумму?

Спасибо!

кор

Ответы [ 4 ]

2 голосов
/ 15 сентября 2011

Изменение одной строки:

tot = tot + Math.Max(0, Convert.ToDouble(dataGridView1.Rows[i].Cells["Total"].Value));

Смотри, Ма!Нет, ЕСЛИ!Нет троичных операторов!Просто математика!

0 голосов
/ 15 сентября 2011

Измените тело цикла for на

    {
        double rowValue = Convert.ToDouble(dataGridView1.Rows[i].Cells["Total"].Value);
        if (rowValue > 0)
            tot += rowValue;
    }
0 голосов
/ 15 сентября 2011
for (i = 0; i < dataGridView1.Rows.Count; i++)
{
    double val = Convert.ToDouble(dataGridView1.Rows[i].Cells["Total"].Value);
    tot = tot + val > 0.0 ? val : 0.0;
}
0 голосов
/ 15 сентября 2011

Примерно так:

private double DGVTotal()
    {
        double tot = 0;
        int i = 0;
        for (i = 0; i < dataGridView1.Rows.Count; i++)
        {
            Double dbTemp = Convert.ToDouble(dataGridView1.Rows[i].Cells["Total"].Value);
            if (dbTemp > 0)
               tot = tot + dbTemp;
        }
        return tot;
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...