en el frmmesas tengo las mesas al presionar por ejemplo la mesa 5 aparece el formulario frmconanda esta formualrio se llena con botones una grilla la informacion pero al momento de cerrar desaparece la informacion de la grilla necesito mantenerla esa informacion del formualrio
codigo
BindingList<Comanda_Detalle> ListadoComanda = new BindingList<Comanda_Detalle>();
si lo dejo publico queda la embarrada que da en memoria en todas la instancia del formulario no sirve por que al abrir otra mesa se abre la información en todas la mesas error
public static BindingList<Comanda_Detalle> ListadoComanda = new BindingList<Comanda_Detalle>();
Código:
}
BtnP[k] = new Button();
BtnP[k].Name = "BtnS" + j.ToString();
BtnP[k].Size = new Size(150, 80);
BtnP[k].Text =ListaProductos[k].NombreProducto;
BtnP[k].Tag =ListaProductos[k].IdProducto;
BtnP[k].Location = locP;
BtnP[k].BackColor = Color.Tomato;
BtnP[k].TabStop = false;
locP.X += 155;
BtnP[k].Click += (object p, EventArgs ak) =>
{
dynamic Pt = (Button)p;
//Agregar a la comanda
var myproducto = objProducto.GetByID(Convert.ToInt32(Pt.Tag));
if (myproducto != null)
{
if (myproducto.NombreSubFamilia != "OPCIONALES" && myproducto.NombreSubFamilia != "Opcionales")
{
if ((myproducto.Stock <= 0) && (myproducto.CalcularStock == true))
{
MessageBox.Show("No existe stock suficiente para vender", "Advertencia", MessageBoxButtons.OK, MessageBoxIcon.Error);
return;
}
}
//DgvDetalleComanda.Rows.Add(0, 0, myproducto.IdProducto, myproducto.NombreProducto, myproducto.Precio, 1, 0.19, "", 1, false);
var deta = new Comanda_Detalle();
deta.IdDetalle = 0;
deta.IdComanda = 0;
deta.IdProducto = myproducto.IdProducto;
deta.NombreProducto = myproducto.NombreProducto;
deta.Precio = myproducto.Precio;
deta.Cantidad = 1;
deta.PorcentajeIVA = eImpuesto.TasaImpuesto;
if (myproducto.NombreSubFamilia == "OPCIONALES" || myproducto.NombreSubFamilia == "Opcionales")
{
deta.Observaciones = myproducto.NombreSubFamilia.ToString();
}
else
{
deta.Observaciones = "";
}
deta.IdSeccion =myproducto.IdSeccion;
deta.Impreso = false;
deta.IdPrioridad = 0;
ListadoComanda.Add(deta);
CalcularComanda();
DgvDetalleComanda.DataSource = ListadoComanda;
};
}
panelProductos.Controls.AddRange(BtnP);
Código:
private void button1_Click(object sender, EventArgs e)
{
FrmMesas form = new FrmMesas();
this.Hide();
form.ShowDialog();
this.Show();
}
se oculto pero aperecieron dos instancia del formulario Frmesas
esto es lo que tengo en el boton formulario mesas