Elaborar programas con el objeto DataGridView, que simule la facturación de productos, recibiendo el precio y la cantidad facturada.
Debe
mostrar el total facturado.
En caso
de eliminar un registro del datagrid el total también debe modificarse.
Código:
public partial class Form1 : Form
{
float total_facturacion =
0;
public Form1()
{
InitializeComponent();
}
private void
btnagregar_Click(object sender, EventArgs e)
{
float precio,
cantidad, total;
if
(string.IsNullOrWhiteSpace(txtproducto.Text))
{
MessageBox.Show("Completar
producto");
txtproducto.Focus();
return;
}
else if
(string.IsNullOrWhiteSpace(txtprecio.Text))
{
MessageBox.Show("Completar precio");
txtprecio.Focus();
return;
}
else
if(string.IsNullOrWhiteSpace(txtcantidad.Text))
{
MessageBox.Show("Completar cantidad");
txtcantidad.Focus();
return;
}
precio =
float.Parse(txtprecio.Text);
cantidad =
float.Parse(txtcantidad.Text);
total = precio * cantidad;
total_facturacion =
total_facturacion + total;
txttotalfacturado.Text = total_facturacion.ToString();
dgvfacturacion.Rows.Add(txtproducto.Text, txtprecio.Text,
txtcantidad.Text, total);
txtproducto.Clear();
txtprecio.Clear();
txtcantidad.Clear();
txtproducto.Focus();
}
private void dgvfacturacion_DoubleClick(object sender, EventArgs e)
{
int fila =
dgvfacturacion.CurrentRow.Index;
txtproducto.Text =
dgvfacturacion.Rows[fila].Cells[0].Value.ToString();
txtprecio.Text =
dgvfacturacion.Rows[fila].Cells[1].Value.ToString();
txtcantidad.Text =
dgvfacturacion.Rows[fila].Cells[2].Value.ToString();
txtprecio.Focus();
total_facturacion =
total_facturacion - float.Parse(dgvfacturacion.Rows[fila].Cells[3].Value.ToString());
txttotalfacturado.Text =
total_facturacion.ToString();
dgvfacturacion.Rows.RemoveAt(fila);
}
Ejemplo:
Comentarios
Publicar un comentario