2011-09-15 6 views
0

こんにちは私はDGV列の合計で負の数を無視する必要があります。次のように私は値を追加するために使用していたコードは次のとおりです。DataGridViewの合計列は負の数を無視します

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; 
    } 

にはどうすればいいので、行の値は、それが合計には含まれていないために負の数である場合、その変更のでしょうか?

ありがとうございます!

コー

答えて

2

一行変化にforループの本体:

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

Look Ma!いいえ、IF!三項演算子はありません!ちょうど明白な数学!

+0

すてきなことアドリアン! – korrowan

+0

いつも喜んで助けてください... –

0

このような何か:

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; 
    } 
0

変更

{ 
     double rowValue = Convert.ToDouble(dataGridView1.Rows[i].Cells["Total"].Value); 
     if (rowValue > 0) 
      tot += rowValue; 
    } 
0
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; 
} 
関連する問題