我是编码方面的新手,在尝试从DataGridView乘以求和值时遇到了一些问题。
基本上,我要做的是将DataGridView列的所有值求和到一个文本框中,然后将其乘以另一个文本框中的值。
到目前为止,我已经能够对DGV购买的所有值求和,似乎无法弄清楚如何将其与其他文本框相乘。
我的代码如下:
private void BtAgregar_Click(object sender, EventArgs e)
{
if (this.DgvBuscador.DataSource != null)
{
this.DgvCarrito.DataSource = null;
}
else
{
this.DgvCarrito.Rows.Clear();
}
for (int i = 0; i < DgvBuscador.SelectedRows.Count; i++)
{
int index = DgvCarrito.Rows.Add();
DgvCarrito.Rows[index].Cells[0].Value = DgvBuscador.SelectedRows[i].Cells[0].Value.ToString();
DgvCarrito.Rows[index].Cells[1].Value = DgvBuscador.SelectedRows[i].Cells[1].Value.ToString();
DgvCarrito.Rows[index].Cells[2].Value = DgvBuscador.SelectedRows[i].Cells[2].Value.ToString();
DgvCarrito.Rows[index].Cells[3].Value = DgvBuscador.SelectedRows[i].Cells[3].Value.ToString();
DgvCarrito.Rows[index].Cells[4].Value = DgvBuscador.SelectedRows[i].Cells[4].Value.ToString();
DgvCarrito.Rows[index].Cells[5].Value = DgvBuscador.SelectedRows[i].Cells[5].Value.ToString();
DgvCarrito.Rows[index].Cells[6].Value = DgvBuscador.SelectedRows[i].Cells[6].Value.ToString();
}
TbTotal.Text = (from DataGridViewRow row in DgvCarrito.Rows
where row.Cells[6].FormattedValue.ToString() != string.Empty
select Convert.ToInt32(row.Cells[6].FormattedValue)).Sum().ToString();
}
答案 0 :(得分:0)
我尝试了一种我想要的不同方法,并且有效。
int j=0; j < a.length-2; j++
答案 1 :(得分:0)
这是另一个对我想要的代码更好的代码。现在,当我将所选行从一个DGV添加到另一个DGV时,第6列(即vale)将乘以计算日期范围的文本框中的天数。
for (int i = 0; i < DgvBuscador.SelectedRows.Count; i++)
{
int index = DgvCarrito.Rows.Add();
DgvCarrito.Rows[index].Cells[0].Value = DgvBuscador.SelectedRows[i].Cells[0].Value.ToString();
DgvCarrito.Rows[index].Cells[1].Value = DgvBuscador.SelectedRows[i].Cells[1].Value.ToString();
DgvCarrito.Rows[index].Cells[2].Value = DgvBuscador.SelectedRows[i].Cells[2].Value.ToString();
DgvCarrito.Rows[index].Cells[3].Value = DgvBuscador.SelectedRows[i].Cells[3].Value.ToString();
DgvCarrito.Rows[index].Cells[4].Value = DgvBuscador.SelectedRows[i].Cells[4].Value.ToString();
DgvCarrito.Rows[index].Cells[5].Value = DgvBuscador.SelectedRows[i].Cells[5].Value.ToString();
DgvCarrito.Rows[index].Cells[6].Value = (Convert.ToInt32(DgvBuscador.SelectedRows[i].Cells[6].Value) * Convert.ToInt32(TbNoches.Text)).ToString();
}
TbTotal.Text = (from DataGridViewRow row in DgvCarrito.Rows
where row.Cells[6].FormattedValue.ToString() != string.Empty
select Convert.ToInt32(row.Cells[6].FormattedValue)).Sum().ToString();