RaouL_BennetH
29-11-2006, 12:43
ciao a tutti.
Posto prima il codice e poi cerco di spiegare bene il problema:
private void CalcoloTotaleCarburante(DataGridViewCellEventArgs e)
{
decimal totaleLitri, totaleCostoRifornimento, totaleCarburante = 0;
bool b1, b2;
b1 = Decimal.TryParse(myGrid.Rows[e.RowIndex].Cells[1].Value.ToString(), out totaleLitri);
b2 = Decimal.TryParse(myGrid.Rows[e.RowIndex].Cells[2].Value.ToString(), out totaleCostoRifornimento);
decimal costoPerLitro = totaleCostoRifornimento / totaleLitri;
myGrid.Rows[e.RowIndex].Cells[3].Value = costoPerLitro.ToString("N2");
//Qui inizia il mio problema
totaleCarburante += totaleCostoRifornimento; //cerco di ottenere la somma dei vari rifornimenti
casellaDiTesto.Text = totaleCarburante.ToString("N2");
}
ora mi succede questo:
1) totaleCostoRifornimento = 49.35
2) totaleCostoRifornimento = 51.89
la mia brava casella di testo anzichè darmi come somma: 101.24
mi da: 103.78
ho provato con diversi valori (sia decimali che interi), ma è come se mi arrotondasse sempre di + o - 2.5.
Mi aiutate per favore?
Grazie.
Raoul.
Posto prima il codice e poi cerco di spiegare bene il problema:
private void CalcoloTotaleCarburante(DataGridViewCellEventArgs e)
{
decimal totaleLitri, totaleCostoRifornimento, totaleCarburante = 0;
bool b1, b2;
b1 = Decimal.TryParse(myGrid.Rows[e.RowIndex].Cells[1].Value.ToString(), out totaleLitri);
b2 = Decimal.TryParse(myGrid.Rows[e.RowIndex].Cells[2].Value.ToString(), out totaleCostoRifornimento);
decimal costoPerLitro = totaleCostoRifornimento / totaleLitri;
myGrid.Rows[e.RowIndex].Cells[3].Value = costoPerLitro.ToString("N2");
//Qui inizia il mio problema
totaleCarburante += totaleCostoRifornimento; //cerco di ottenere la somma dei vari rifornimenti
casellaDiTesto.Text = totaleCarburante.ToString("N2");
}
ora mi succede questo:
1) totaleCostoRifornimento = 49.35
2) totaleCostoRifornimento = 51.89
la mia brava casella di testo anzichè darmi come somma: 101.24
mi da: 103.78
ho provato con diversi valori (sia decimali che interi), ma è come se mi arrotondasse sempre di + o - 2.5.
Mi aiutate per favore?
Grazie.
Raoul.