cuando selecciono el remito del listbox se deberia cargar los detalles en el datagrid.
pero me tira este error:
El índice estaba fuera del intervalo. Debe ser un valor no negativo e inferior al tamaño de la colección.
Nombre del parámetro: index
aca pongo el codigo:
Código:
public partial class frmDev : Form
{
private BindingList<Venta> bVenta;
public frmDev()
{
InitializeComponent();
}
private void txtRemito_TextChanged(object sender, EventArgs e)
{
if (txtRemito.Text != "")
{
Int32 valorId = Convert.ToInt32(txtRemito.Text);
IRepositorioVenta rVen = new RepositorioVenta();
IList<Venta> lVen = rVen.obtenerFacturasPorId(valorId);
bVenta = new BindingList<Venta>(lVen);
lstRemitos.ValueMember = "Id";
lstRemitos.DisplayMember = "NumeroRemito";
lstRemitos.DataSource = lVen;
}
}
private void txtRemito_KeyPress(object sender, KeyPressEventArgs e)
{
if ((e.KeyChar >= 47 && e.KeyChar <= 58) || (e.KeyChar == 8))
{
e.Handled = false;
}
else
{
e.Handled = true;
}
}
private void txtRemito_MouseClick(object sender, MouseEventArgs e)
{
//
}
private void armaGrillaRemito(string[]titulos, string[]datos)
{
dgvRemito.Columns.Clear();
for (int i = 0; i < datos.Length; i++)
{
DataGridViewColumn dCol = new DataGridViewColumn();
dCol.DataPropertyName = datos[i];
dCol.HeaderText = titulos[i];
dCol.CellTemplate = new DataGridViewTextBoxCell();
dgvRemito.Columns.Add(dCol);
}
}
private void frmDev_Load(object sender, EventArgs e)
{
dgvRemito.Refresh();
dgvRemito.AutoGenerateColumns = false;
string[]titulos = new string [2]{"Producto","Cantidad"};
string[] datos = new string[2] { "NombreProducto", "Cantidad" };
armaGrillaRemito(titulos, datos);
}
private void lstRemitos_SelectedIndexChanged(object sender, EventArgs e)
{
Venta num = ((Venta)lstRemitos.SelectedItem);
Venta ven;
ven = bVenta[num.Remito.idRemito]; //aca esta tirando error
dgvRemito.DataSource = ven.Items;
dgvRemito.Refresh();
}
el count de bVenta llega con 1 y el ven viene con el id del remito seleccionado de la listbox.
que me falta para que me cargue los items en el data grid??
saludos!

