web-dev-qa-db-fra.com

Boucler chaque ligne dans datagridview

Comment boucler chaque ligne lue? dans mon code, la ligne ne se liera pas à la ligne suivante à cause du même ID produit, donc le datagridview ne se déplacera pas vers une nouvelle ligne, il reste dans la même ligne et écrase le prix (pour certains produits, j'ai deux prix) . Comment le boucler pour afficher le même ID produit mais son prix est différent.

EX: 1 Hamburger a 2 prix Hamburger: 1 $ et 2 $ lorsque j'obtiens les données en les bouclant, le resouldt devrait avoir 2 rangées avec le même produit mais un prix différent. Comment faire ça? ci-dessous est mon code

productID = odr["product_id"].ToString();
quantity = Double.Parse(odr["quantity"].ToString());

//processing data...
key = productID.ToString();

if (key != key_tmp)
{
    //update index...
    i++;

    //updating variable(s)...
    key_tmp = key;
}

if (datagridviews.Rows[i].Cells["qty"].Value != null) //already has value...
{
    currJlh = Double.Parse(ddatagridviews.Rows[i].Cells["qty"].Value.ToString());
}
else //not yet has value...
{
    currQty = 0;
}
currQty += qty;

//show data...
datagridviews.Rows[i].Cells["price"].Value = cv.toAccountingCurrency_en(Double.Parse(odr["item_price"].ToString()));
MessageBoxes.Show(i.ToString());
MessageBoxes.Show(datagridviews.Rows[i].Cells["price"].Value.ToString()); // in here there is two price that looped but won't showed in datagridviews

aide moi :)

16
Ke Vin

Vous pouvez parcourir DataGridView en utilisant la propriété Rows, comme:

foreach (DataGridViewRow row in datagridviews.Rows)
{
   currQty += row.Cells["qty"].Value;
   //More code here
}
61
Edper